zoukankan      html  css  js  c++  java
  • 错误日志收集sentry的安装与简单使用

    通过官方文档https://docs.sentry.io/可以得知,安装服务有两种方式,一种是使用Python,这种方式个人感觉比较麻烦。于是选择了第二种方式:使用docker。

    我是在Windows上使用的docker,前后执行了如下命令:

    1. 获取redis、postgres、sentry。sentry对redis和postgres的版本有要求,不能使用太低版本的。

    docker pull redis
    docker pull postgres
    docker pull sentry

    2.启动redis和postgres。
    docker run -d --name sentry-redis redis
    docker run -d --name sentry-postgres -e POSTGRES_PASSWORD=secret -e POSTGRES_USER=sentry postgres
    docker run --rm sentry config generate-secret-key
    #上一行得到secret-key,然后把key复制到下面四行的单引号中。

    3. 启动sentry。
    docker run -it --rm -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-postgres:postgres --link sentry-redis:redis sentry upgrade
    docker run -d -p 9000:9000 --name my-sentry -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-redis:redis --link sentry-postgres:postgres sentry
    docker run -d --name sentry-cron -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-postgres:postgres --link sentry-redis:redis sentry run cron
    docker run -d --name sentry-worker-1 -e SENTRY_SECRET_KEY='<secret-key>' --link sentry-postgres:postgres --link sentry-redis:redis sentry run worker
    完成后,在浏览器中输入http://192.168.99.100:9000 即可访问。

    在上面某一步中会有要求输入账号密码,输入即可,输入的账号密码可以在页面上直接登录。

    登录进去后,会有个默认的Internal项目,在该项目的setting中可以获取到客户端需要的DSN地址。

    当然也可以添加自己的project和team。

    sentry的客户端支持以下语言:Python JavaScript PHP Ruby Objective-C Java Cocoa C# Go Elixir

    Java语言又支持 'Raven'  'Log4j'  'Log4j 2'  'Logback'  'Google App Engine'。这些信息都可以从官方文档中获取。

    我使用的是logback

    logback配置如下:

    <appender name="Sentry" class="net.kencochrane.raven.logback.SentryAppender">
            <dsn>http://fb3db0354d984f328234b7f00edadee1:74f9b511c4ca4109916ea5907f45b50c@192.168.99.100:9000/1</dsn>
            <ravenFactory>net.kencochrane.raven.DefaultRavenFactory</ravenFactory> -->
            <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
                <level>ERROR</level>
            </filter>
    </appender>
    <root level="INFO">
            <appender-ref ref="Sentry" />
    </root>

    这样就会把logback记录的error级别的日志发送到sentry服务端,通过页面可以即时获得。

    项目中引用的客户端jar包:

    <dependency>
                <groupId>net.kencochrane.raven</groupId>
                <artifactId>raven-logback</artifactId>
                <version>6.0.0</version>
    </dependency>

    参考:

    https://docs.sentry.io/

    https://hub.docker.com/_/sentry/

  • 相关阅读:
    AngularJS Insert Update Delete Using PHP MySQL
    Simple task manager application using AngularJS PHP MySQL
    AngularJS MySQL and Bootstrap Shopping List Tutorial
    Starting out with Node.js and AngularJS
    AngularJS CRUD Example with PHP, MySQL and Material Design
    How to install KVM on Fedora 22
    Fake_AP模式下的Easy-Creds浅析
    河南公务员写古文辞职信
    AI
    政协委员:最大愿望是让小学生步行上学
  • 原文地址:https://www.cnblogs.com/qlong8807/p/6047207.html
Copyright © 2011-2022 走看看