Popularity
6.5
Growing
Activity
5.5
Declining
25
1
40

Monthly Downloads: 2,345
Programming language: Elixir
License: MIT License
Tags: Third Party APIs    

airbrakex alternatives and similar packages

Based on the "Third Party APIs" category

Do you think we are missing an alternative of airbrakex or a related project?

Add another 'Third Party APIs' Package

README

Airbrakex Package Version Code Climate Build Status

Elixir client for the Airbrake service!

Installation

Add Airbrakex as a dependency to your mix.exs file:

defp deps do
  [{:airbrakex, "~> 0.1.8"}]
end

If on Elixir 1.3 or lower you will need to add it to your applications.

def application do
  [applications: [:airbrakex]]
end

Then run mix deps.get in your shell to fetch the dependencies.

Configuration

It requires project_key and project parameters to be set in your application environment, usually defined in your config/config.exs. logger_level and environment are optional.

config :airbrakex,
  project_key: "abcdef12345",
  project_id: 123456,
  logger_level: :error,
  environment: Mix.env

Advanced Configuration

If you want to use errbit instance, set custom url as endpoint. If you connect through a proxy or need to pass other specific options to HTTPoison you can use http_options, see https://hexdocs.pm/httpoison/HTTPoison.html#request/5 for a list of the available options.

config :airbrakex,
  project_key: "abcdef12345",
  project_id: 123456,
  endpoint: "http://errbit.yourdomain.com",
  http_options: [ssl: [cacertfile: "/path/to/certfile.pem"]]

Usage

try do
  IO.inspect("test",[],"")
rescue
  exception -> Airbrakex.notify(exception)
end

Logger Backend

There is a Logger backend to send logs to the Airbrake, which could be configured as follows:

config :logger,
  backends: [:console, Airbrakex.LoggerBackend]

Plug

You can plug Airbrakex.Plug in your web application Plug stack to send all exception to Airbrake

defmodule YourApp.Router do
  use Phoenix.Router
  use Airbrakex.Plug

  # ...
end

Ignore

You can ignore certain types of errors by specifying :ignore config key:

config :airbrakex,
  ...
  # List form
  ignore: [Phoenix.Router.NoRouteError]
  # OR
  # Function
  ignore: fn(error) ->
    cond do
      error.type == Phoenix.Router.NoRouteError -> true
      String.contains?(error.message, "Ecto.NoResultsError") -> true
      true -> false
    end
  end

Thankx

Thank you!

Become Patreon