1. 程式人生 > >Sentry命令列工具認證和登陸

Sentry命令列工具認證和登陸

對於大多數功能,您需要使用Sentry進行身份驗證。要通過CLI工具登入,您可以使用login命令來指導您完成:

$ sentry-cli login

如果您想手動驗證sentry-cli,您可以轉到您的使用者帳戶(使用者圖示 - > API)中的身份驗證令牌設定,並生成至少包含以下範圍的新令牌:

  • project:read
  • project:releases

然後,您可以匯出SENTRY_AUTH_TOKEN環境變數:

export SENTRY_AUTH_TOKEN=your-auth-token

或者,只要呼叫sentry-cli或將其新增到.sentryclirc配置檔案,就可以提供--auth-token命令列引數。

預設情況下,sentry-cli將連線到sentry.io但是對於內部部署,您還可以在其他地方登入:

sentry-cli --url https://myserver.invalid/ login

一、配置檔案

可以使用名為.sentryclirc的配置檔案以及環境變數和.env檔案配置sentry-cli工具。從當前路徑向上查詢配置檔案,始終載入〜/ .sentryclirc的預設值。您還可以從命令列引數覆蓋這些設定。

配置檔案使用標準INI語法。

預設情況下,sentry-cli將連線到sentry.io。對於本地,您可以匯出SENTRY_URL環境變數並將其指向您的安裝:

export SENTRY_URL=https://mysentry.invalid/

或者,您可以將其新增到〜/ .sentryclirc配置中。這也是login命令的作用:

[defaults]
url = https://mysentry.invalid/

二、配置值

可以使用以下設定(首先是環境變數,括號中的值是配置檔案中的配置鍵):

SENTRY_AUTH_TOKEN(auth.token):
用於與Sentry進行所有通訊的身份驗證令牌。

SENTRY_API_KEY(auth.api_key):
用於身份驗證的舊API金鑰(如果有)。

SENTRY_URL(defaults.url):
用於連線到哨兵的URL。預設為https://sentry.io/。

SENTRY_ORG(defaults.org):
組織用於命令的slu ..

SENTRY_PROJECT(defaults.project):
用於命令的專案的slu ..

(http.keepalive):
此ini only設定用於控制SDK與HTTP keepalive相關的行為。預設值為true,但可以將其設定為false以禁用keepalive支援。

http_proxy(http.proxy_url):
應該用於HTTP代理的URL。標準的http_proxy環境變數也很受尊重。請注意它是小寫的。

(http.proxy_username):
此ini only設定設定代理使用者名稱,以防需要代理身份驗證。

(http.proxy_password):
此ini only設定設定代理密碼,以防需要代理身份驗證。

(http.verify_ssl):
當設定為false時,這可用於禁用SSL驗證。除非您在本地使用已知的自簽名伺服器,否則不應該這樣做。

(http.check_ssl_revoke):
如果將其設定為false,則在Windows上禁用SSL吊銷檢查。在使用未正確實施吊銷檢查的公司SSL MITM代理時,這非常有用。除非絕對必要,否則不要使用它。

(ui.show_notifications):
如果將其設定為false,則會禁用某些作業系統通知。這當前主要影響xcode構建,不會顯示後臺構建的通知。

SENTRY_LOG_LEVEL(log.level):
配置SDK的日誌級別。預設為警告。如果要檢視庫正在執行的操作,可以將其設定為info,這將顯示更多可能有助於除錯某些許可權問題的資訊。

(dsym.max_upload_size):
將除錯符號的最大上載大小(以壓縮形式)設定為一個批處理。預設值為35MB或100MB(取決於sentry-cli的版本),適用於sentry.io,但如果您使用的是其他哨兵伺服器,則可能需要更改此限制。

SENTRY_DISABLE_UPDATE_CHECK(update.disable_check):
如果設定為true,則禁用sentry-cli中的自動更新檢查。這是在1.17中引入的。之前的版本不包括更新檢查。目前,對於基於npm的sentry-cli安裝,也沒有啟用更新檢查。

DEVICE_FAMILY(device.family):
向Sentry報告裝置系列值。

DEVICE_MODEL(device.model):
裝置模型值報告給Sentry。 

 三、驗證配置

要確保一切正常,您可以執行sentry-cli資訊,它應該打印出有關您連線的Sentry安裝的一些基本資訊以及一些身份驗證資訊。

四、專案配置

許多命令都要求您指定要使用的組織和專案。您可以通過多種方式指定此方法。

1、配置預設值

如果您始終使用相同的專案,則可以在.sentryclirc檔案中進行設定:

[defaults]
project=my-project
org=my-org

2、環境變數

您還可以在環境變數中設定這些預設值。有兩個控制它的環境變數(SENTRY_ORG和SENTRY_PROJECT)可以匯出: 

export SENTRY_ORG=my-org
export SENTRY_PROJECT=my-project

3、屬性檔案

另外,sentry-cli支援從.properties檔案載入配置值(在Java環境中很常見)。您可以通過將路徑匯出到SENTRY_PROPERTIES環境變數中的屬性檔案來指示sentry-cli從那裡載入配置檔案。這通常是針對我們的一些客戶端整合(如Java和React-Native)自動完成的。

在屬性檔案中,您只需使用點分表示法來設定值。例: 

defaults.url=https://mysentry.invalid/

然後指示sentry-cli使用該檔案使用:

export SENTRY_PROPERTIES=/path/to/sentry.properties
sentry-cli ...

4、顯示選項

最後,您還可以使用正在執行的命令顯式提供這些值。對於組織,引數始終稱為--org或-o,對於專案,引數始終稱為--project或-p。

請注意,它們並不總是使用相同的命令。例如,如果您正在管理髮布(在整個組織中共享),您通常會將組織提供給releases命令,但將專案提供給子命令:

$ sentry-cli releases -o my-org new -p my-project 1.0

有關更多資訊,請使用help命令,該命令將為您提供所有引數的文件。