# LoggerSentry
[![Build Status](https://img.shields.io/travis/adRise/logger_sentry.svg?style=flat-square)](https://travis-ci.org/adRise/logger_sentry)
[![Coverage Status](https://coveralls.io/repos/github/adRise/logger_sentry/badge.svg)](https://coveralls.io/github/adRise/logger_sentry)
The Logger backend for Sentry.
## Installation
The package can be installed as:
1. Add `logger_sentry` to your `mix.exs` file
```
def deps do
[{:logger_sentry, github: "redink/logger_sentry"}]
end
```
2. Configure your config file, just like:
```
config :logger,
backends: [:console, Logger.Backends.Sentry],
sentry: [level: :error,
format: "$time $metadata[$level] $levelpad$message",
metadata: [:application, :module, :function, :file, :line, :pid] # :all
]
```
If you want keep `console` backend in Logger event server, you should set `backends` with `[:console, Logger.Backends.Sentry]`. And sentry backend just support three options:
- level
- format
- metadata
just like as `console` backend.
## Usage
Just like using Logger.
```
Logger.debug("this is one debug message")
Logger.info("this is one info message")
Logger.warn("this is one warning message")
Logger.error("this is one error message, if you set sentry logger level with `error`, the message will sent to your sentry server")
```
### get log level
```
Logger.Backends.Sentry.level
```
### set log level
```
Logger.Backends.Sentry.level(:error)
```
### get format
```
Logger.Backends.Sentry.format
```
### get metadata
```
Logger.Backends.Sentry.metadata
```
### set metadata
```
Logger.Backends.Sentry.metadata([])
Logger.Backends.Sentry.metadata(:all)
Logger.Backends.Sentry.metadata([:application, :module, :pid])
```