Sentry(日志監控系統)搭建與集成


Sentry 是一個開源的實時錯誤追蹤系統,可以幫助開發者實時監控並修復異常問題

本文采用在docker中安裝sentry服務端
  • sentry依賴redis、Postgre
  • 安裝redis並啟動
docker run -d  --name sentry-redis redis
  • 安裝Postgre並啟動
docker run -d --name sentry-postgres -e POSTGRES_PASSWORD=secret -e POSTGRES_USER=sentry postgres
  • 安裝sentry並生成一個密鑰,用於在后面所有sentry容器之間握手
docker run --rm sentry config generate-secret-key
*** 此處生成的密鑰需要記錄下后續使用
  • 連接Redis、Postgres和Sentry,運行后會自動執行初始化操作
docker run -it --rm -e SENTRY_SECRET_KEY='此處為密鑰' --link sentry-postgres:postgres --link sentry-redis:redis sentry upgrade
  • 啟動 Sentry Server,同時添加端口映射
docker run -d --name my-sentry -p 9000:9000 -e SENTRY_SECRET_KEY='此處為密鑰' --link sentry-redis:redis --link sentry-postgres:postgres sentry
  • 默認配置中需要Celery,因此啟動一個Celery 主節點
docker run -d --name sentry-cron -e SENTRY_SECRET_KEY='o2+e6yq-7&f()to7mm*3__8%ql)nm4)4!!a5t0uc4p8s8xi==k' --link sentry-postgres:postgres --link sentry-redis:redis sentry run cron
  • 啟動執行節點(worker節點可按需多啟幾個)
docker run -d --name sentry-worker-1 -e SENTRY_SECRET_KEY='o2+e6yq-7&f()to7mm*3__8%ql)nm4)4!!a5t0uc4p8s8xi==k' --link sentry-postgres:postgres --link sentry-redis:redis sentry run worker

以上便完成了sentry的搭建,檢驗是否安裝成功,可以訪問sentry頁面 http://ip:9000

  • 注冊進入主頁面后,點擊項目並新建項目,選擇Java輸入任意項目名並創建;
  • 創建完成后進入項目點擊設置,選擇DSN查看如下圖:

  • 復制DSN地址配置客戶端時使用

客戶端集成
  • pom.xml引入
<dependency>
    <groupId>io.sentry</groupId>
    <artifactId>sentry-spring</artifactId>
    <version>1.7.27</version>
</dependency>
<dependency>
    <groupId>io.sentry</groupId>
    <artifactId>sentry-logback</artifactId>
    <version>1.7.5</version>
</dependency>
  • logback添加依賴:
    <appender name="Sentry" class="io.sentry.logback.SentryAppender">
        <filter class="ch.qos.logback.classic.filter.ThresholdFilter">
            <level>ERROR</level>
        </filter>
    </appender>

    <root level="INFO">
	<!-- 新增sentry -->
        <appender-ref ref="Sentry"/>
    </root>
  • 配置中添加dsn秘鑰sentry.dsn之前復制的,啟動項目;

至此sentry集成完成,可以進入項目查看相關配置的級別日志;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM