1. 程式人生 > >django使用sentry錯誤日誌管理系統

django使用sentry錯誤日誌管理系統

django使用sentry管理系統

  • sentry是用python寫的日誌管理系統,可在上面管理出現的錯誤日誌
  • 在上面我們可以分專案,分組別的處理錯誤日誌
  • 他倆的區別:sentry是介紹sentry的使用的,而sentry onpremise則是使用docker安裝sentry系統的

1. 使用docker安裝sentry

  • 安裝

    1. 先安裝docker和docker-compose,可以上daocloud上安裝,速度快
    2. 再cd進入clone下來的資料夾,在裡面建立資料資料夾和生成web金鑰:
    cd onpremise
    sudo mkdir -p data/{sentry,postgres}
    
    # 注意這裡使用Mac的有個坑:新建立的sentry和postgres是root使用者的,需要切換到當前使用者,如當前使用者為myuser
    # 執行命令:sudo chown -R myuser ./data/* # 否則的話會出現:chown: changing ownership of ‘/var/lib/sentry/files’: Operation not permitted # 生成secret-key,下面這個語句結束後,在最後一行會顯示key docker-compose run --rm web config generate-secret-key # 把key複製下來,開啟docker-compose.yml,放到SENTRY_SECRET_KEY裡面 sudo vi docker-compose.yml
    1. 遷移資料庫的表
    docker-compose run --rm web upgrade
    
    # 注意報錯也不要管,直接讓他執行到最後,最後會有個建立超級使用者的選項,建立一個就行了
    
    1. 開啟docker執行

      docker-compose run up -d

2. 配合django裡面使用

  • 進入 localhost:9000 之後,在裡面登入後,點選new project,選擇django,最後檢視dsn值,得到一串字串,dsn值
  • pip install raven –upgrade # 安裝raven
  • 配置django的settings.py

    INSTALLED_APP = [
        ...
        'raven.contrib.django.raven_compat'
    ] RAVEN_CONFIG = { 'dsn': '你上面建立專案的時候得到的dsn' }
  • 其他的都不需要配置,就可以了,至於sentry網頁上的分組等操作,則需要自己去摸索了