All Projects → tradier → dropwizard-raven

tradier / dropwizard-raven

Licence: MIT license
Dropwizard integration for error logging to Sentry.

Programming Languages

java
68154 projects - #9 most used programming language
shell
77523 projects

Projects that are alternatives of or similar to dropwizard-raven

pink-lady
a template project of gin app.
Stars: ✭ 44 (+120%)
Mutual labels:  sentry
sentry-typo3
TYPO3 Sentry integration
Stars: ✭ 17 (-15%)
Mutual labels:  sentry
django-docker
Toy project. Trying to use Django inside a Docker container for both local development and production deployment.
Stars: ✭ 18 (-10%)
Mutual labels:  sentry
keycloak-dropwizard-integration
This project shows how JBoss Keycloak and Dropwizard can be used together.
Stars: ✭ 49 (+145%)
Mutual labels:  dropwizard
metrics-aspectj
AspectJ integration for Dropwizard Metrics
Stars: ✭ 78 (+290%)
Mutual labels:  dropwizard
dropwizard-guicey-ext
Dropwizard-guicey extensions
Stars: ✭ 11 (-45%)
Mutual labels:  dropwizard
micro-sentry
Tiny Sentry client with idiomatic wrapper for Angular
Stars: ✭ 100 (+400%)
Mutual labels:  sentry
thunder
REST API application that manages user databases
Stars: ✭ 22 (+10%)
Mutual labels:  dropwizard
sbt-guardrail
Principled code generation from OpenAPI specifications
Stars: ✭ 24 (+20%)
Mutual labels:  dropwizard
further-cdi
🔊 Going further with CDI presentation
Stars: ✭ 28 (+40%)
Mutual labels:  dropwizard
docker-compose-sentry
Docker Compose configuration for running a Sentry server.
Stars: ✭ 20 (+0%)
Mutual labels:  sentry
dropwizard-swagger
a Dropwizard bundle that serves Swagger UI static content and loads Swagger endpoints.
Stars: ✭ 176 (+780%)
Mutual labels:  dropwizard
rhythm
Time-based job scheduler for Apache Mesos
Stars: ✭ 30 (+50%)
Mutual labels:  sentry
sentry-beaconfire
Kotlin based sentry android application
Stars: ✭ 35 (+75%)
Mutual labels:  sentry
metrics-agent
JVM agent based metrics with Prometheus and Dropwizard support (Java, Scala, Clojure, Kotlin, etc)
Stars: ✭ 25 (+25%)
Mutual labels:  dropwizard
dropwizard-elasticsearch
A set of classes for using Elasticsearch in a Dropwizard service.
Stars: ✭ 61 (+205%)
Mutual labels:  dropwizard
incubator-sentry
Mirror of Apache Sentry
Stars: ✭ 35 (+75%)
Mutual labels:  sentry
sentry-ruby-api
Ruby wrapper for getsentry/Sentry REST API
Stars: ✭ 19 (-5%)
Mutual labels:  sentry
thvu-blog
My digital home on the internet.
Stars: ✭ 51 (+155%)
Mutual labels:  sentry
sentry-mattermost
Sends Sentry notifications to Mattermost Open Source Chat
Stars: ✭ 30 (+50%)
Mutual labels:  sentry

Dropwizard Raven

Maven Central Build Status

Dropwizard integration for error logging to Sentry.

Usage

The Dropwizard Raven provides an AppenderFactory which is automatically registered in Dropwizard and will send errors to Sentry.

Logging startup errors

In order to log startup errors (i.e. before the RavenAppenderFactory has been properly initialized), the Dropwizard application has to run the RavenBootstrap.bootstrap() in its main method and set a custom UncaughtExceptionHandler for the main thread.

public static void main(String[] args) throws Exception {
    RavenBootstrap.bootstrap(DSN);
    Thread.currentThread().setUncaughtExceptionHandler(UncaughtExceptionHandlers.systemExit());

    new MyDropwizardApplication().run(args);
}

Configuration

The Logback SentryAppender can be configured using the provided RavenConfiguration class which basically mirrors the appender configuration outlined in raven-logback.

Include the raven appender in your config.yml:

appenders:
  - type: raven
    threshold: ERROR
    dsn: https://user:[email protected]/appid
    environment: production
    extraTags: foo,bar,baz
    ravenFactory: com.example.RavenFactory
    release: 1.0.0
    serverName: 10.0.0.1
    tags: tag:value,tag2:value

Configuration Settings

Setting Default Description Example Value
threshold ALL The log level to configure to send to Sentry ERROR
dsn Data Source Name - 'https://{PUBLIC_KEY}:{SECRET_KEY}@sentry.io/{PROJECT_ID}' https://foo:[email protected]/12345
environment [empty] The environment your application is running in production
extraTags [empty] Additional tag names to be extracted from MDC when using SLF4J foo,bar,baz
ravenFactory [empty] Specify a custom RavenFactory class com.example.RavenFactory
release [empty] The release version of your application 1.0.0
serverName [empty] Override the server name (rather than looking it up dynamically) 10.0.0.1
tags [empty] Additional tags to be sent with errors tag1:value1,tag2:value2

Maven Artifacts

This project is available in the Central Repository. To add it to your project simply add the following dependency to your POM:

<dependency>
  <groupId>com.tradier</groupId>
  <artifactId>dropwizard-raven</artifactId>
  <version>1.0.0-1</version>
</dependency>

Support

Please file bug reports and feature requests in GitHub issues.

Acknowledgements

Thanks to gini for dropwizard-gelf from which much of the original implementation was derived.

Copyright

Copyright (c) 2014-2016 Tradier Inc. See LICENSE for detail.

Note that the project description data, including the texts, logos, images, and/or trademarks, for each open source project belongs to its rightful owner. If you wish to add or remove any projects, please contact us at [email protected].