seqcli
Seq 客戶端命令列應用程式。支援日誌記錄 ( seqcli log
)、搜尋 ( search
)、拖尾 ( tail
)、查詢 ( query
) 和 JSON 或純文字日誌檔案攝取 ( ingest
) 等等。
適用於 Windows 的 Seq 安裝程式包括seqcli
。否則,請下載適合您的作業系統的版本。或者,如果您安裝了dotnet
,則可以使用下列命令將seqcli
安裝為全域工具:
dotnet tool install --global seqcli
若要設定預設伺服器 URL 和 API 金鑰,請執行:
seqcli config -k connection.serverUrl -v https://your-seq-server
seqcli config -k connection.apiKey -v your-api-key
API金鑰將儲存在您的SeqCli.json
設定檔中;在 Windows 上,這是使用 DPAPI 加密的;在 Mac/Linux 上,金鑰目前以純文字形式儲存。作為在配置中儲存 API 金鑰的替代方法,可以透過--apikey=
參數將其傳遞給每個命令。
seqcli
也可以當作datalust/seqcli
下的 Docker 容器使用:
docker run --rm datalust/seqcli:latest []
若要連接至本機電腦上 docker 容器中的 Seq,請使用電腦的 IP 位址(而非 localhost)或使用--net host
指定 docker 主機網路。
使用 Docker 網路和磁碟區使本機檔案和其他容器可供seqcli
在其容器內存取。
每個設定值都可以在運行時透過指定SEQCLI_
形式的環境變數來覆蓋,其中設定名稱的每個點部分包含一個元素,並用下劃線分隔。
例如,設定connection.serverUrl
可以用SEQCLI_CONNECTION_SERVERURL
變數覆蓋。
如果您要自動化 Seq 設置,那麼您很可能還沒有可供seqcli
使用的 API 金鑰。在初始Seq伺服器設定期間,您可以指定firstRun.adminUsername
和firstRun.adminPasswordHash
(或等效的環境變數SEQ_FIRSTRUN_ADMINUSERNAME
和SEQ_FIRSTRUN_ADMINPASSWORDHASH
)來設定管理員帳號的初始使用者名稱和密碼。您可以使用它們建立 API 金鑰,然後將 API 金鑰令牌與其餘seqcli
命令一起使用。
seqcli apikey create
指令接受--connect-username
和--connect-password-stdin
,並將新的 API 金鑰令牌列印到STDOUT
(以下使用 PowerShell 語法):
$user = "admin"
$pw = "thepassword"
$token = (
echo $pw |
seqcli apikey create `
-t CLI `
--permissions="Read,Write,Project,Organization,System" `
--connect-username $user --connect-password-stdin
)
請參閱CONTRIBUTING.md
。
使用 API 金鑰連接時,允許的操作由指派給該 API 金鑰的權限決定。
若要確定指令所需的權限,請檢查等效伺服器 API 操作的「權限需求」欄位。例如,指令apikey create
使用POST api/apikeys
端點,這需要Write
權限。
所有seqcli
指令都遵循相同的模式:
seqcli []
可以透過執行以下命令查看支援的命令的完整清單:
seqcli help
若要顯示特定指令的使用訊息,請執行seqcli help
,例如:
seqcli help apikey create
這也適用於指揮組;若要列出所有apikey
子命令,請執行:
seqcli help apikey
apikey
apikey create
— 建立用於自動化或攝取的 API 金鑰。apikey list
— 列出可用的 API 金鑰。apikey remove
— 從伺服器中刪除 API 金鑰。apikey update
— 更新現有的 API 金鑰。app
app define
— 為 .NET [SeqApp]
插件產生應用程式定義。app install
— 安裝應用程式套件。app list
— 列出已安裝的應用程式套件。app run
— 託管 .NET [SeqApp]
插件。app uninstall
— 卸載應用程式套件。app update
— 更新已安裝的應用程式套件。appinstance
appinstance create
— 建立已安裝應用程式的實例。appinstance list
— 列出已安裝應用程式的實例。appinstance remove
— 從伺服器中刪除應用程式實例。appinstance update
— 更新現有的應用程式實例。bench
— 衡量查詢效能。config
— 檢視並設定SeqCli.json
檔案中的欄位;不帶參數運行以列出所有欄位。dashboard
dashboard list
— 列出儀表板。dashboard remove
— 從伺服器中刪除儀表板。dashboard render
— 從儀表板圖表產生 CSV 或 JSON 結果集。expressionindex
expressionindex create
— 建立表達式索引。expressionindex list
— 列出表達式索引。expressionindex remove
— 從伺服器中刪除表達式索引。feed
feed create
— 建立 NuGet feed。feed list
— 列出 NuGet feed。feed remove
— 從伺服器中刪除 NuGet feed。feed update
— 更新現有的 NuGet feed。help
— 顯示可用指令的資訊。index
index list
— 列出索引。index suppress
— 抑制索引。ingest
- 從檔案或STDIN
傳送日誌事件。license apply
— 將許可證應用於 Seq 伺服器。log
— 將結構化日誌事件傳送到伺服器。node
node demote
— 開始降級目前領導節點。node health
— 探測 Seq 節點的/health
端點,並列印傳回的 HTTP 狀態碼,如果無法查詢端點,則列印「無法存取」。node list
— 列出 Seq 叢集中的節點。print
- 來自檔案或STDIN
CLEF/JSON 格式的漂亮列印事件。profile
profile create
— 建立或取代連線設定檔。profile list
— 列出連線設定檔。profile remove
— 刪除連線設定檔。query
— 執行 SQL 查詢並接收 CSV 格式的結果。retention
retention create
— 建立保留策略。retention list
— 列出保留策略。retention remove
— 從伺服器中刪除保留原則。retention update
— 更新現有保留策略。sample
sample ingest
- 將樣本事件記錄到 Seq 實例中。sample setup
- 使用範例儀表板、訊號、使用者等配置 Seq 實例。search
— 檢索與給定篩選器相符的日誌事件。setting
setting clear
— 清除運行時可設定的伺服器設定。setting names
— 列印所有支援的設定的名稱。setting set
— 變更運行時可設定的伺服器設定。setting show
— 列印運作時可設定伺服器設定的目前值。signal
signal create
— 建立訊號。signal import
— 以換行符號分隔的 JSON 格式匯入訊號。signal list
— 列出可用訊號。signal remove
— 從伺服器中刪除訊號。signal update
— 更新現有訊號。tail
— 與篩選器相符的流程日誌事件。template
template export
— 將實體匯出到範本文件中。template import
— 從範本檔案匯入實體。user
user create
— 建立使用者。user list
— 列出使用者。user remove
— 從伺服器中刪除使用者。user update
— 更新現有使用者。version
— 列印目前可執行版本。workspace
workspace create
— 建立工作區。workspace list
— 列出可用的工作區。workspace remove
— 從伺服器中刪除工作區。workspace update
— 更新現有工作區。apikey create
建立用於自動化或攝取的 API 金鑰。
例子:
seqcli apikey create -t 'Test API Key' -p Environment=Test
選項 | 描述 |
---|---|
-t , --title=VALUE | API 金鑰的標題 |
--token=VALUE | 預先分配的 API 金鑰令牌;預設情況下,將產生一個新令牌並將其寫入STDOUT |
-p , --property=NAME=VALUE | 指定名稱/值屬性,例如-p Customer=C123 -p Environment=Production |
--filter=VALUE | 應用於傳入事件的過濾器 |
--minimum-level=VALUE | 可接受的最低事件等級/嚴重性;預設是接受所有事件 |
--use-server-timestamps | 丟棄客戶端提供的時間戳記並使用伺服器時鐘值 |
--permissions=VALUE | 以逗號分隔的權限列表,委託給 API 金鑰;有效權限為Ingest (預設)、 Read 、 Write 、 Project 和System |
--connect-username=VALUE | 用於連接的用戶名,主要在設定第一個 API 金鑰時有用;具有“個人”訂閱的伺服器僅允許使用此選項的一個同時請求 |
--connect-password=VALUE | 當指定connect-username 時,對應的密碼 |
--connect-password-stdin | 當指定connect-username 時,從STDIN 讀取對應的密碼 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
apikey list
列出可用的 API 金鑰。
例子:
seqcli apikey list
選項 | 描述 |
---|---|
-t , --title=VALUE | 要列出的 API 金鑰的標題 |
-i , --id=VALUE | 要列出的單一 API 金鑰的 ID |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
apikey remove
從伺服器中刪除 API 金鑰。
例子:
seqcli apikey remove -t 'Test API Key'
選項 | 描述 |
---|---|
-t , --title=VALUE | 要刪除的 API 金鑰的標題 |
-i , --id=VALUE | 要刪除的單一 API 金鑰的 ID |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
apikey update
更新現有的 API 金鑰。
例子:
seqcli apikey update --json '{...}'
選項 | 描述 |
---|---|
--json=VALUE | 更新後的 JSON 格式的 API 金鑰;這可以使用seqcli apikey list --json 生成 |
--json-stdin | 從STDIN 讀取更新後的 JSON 格式的 API 金鑰 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
app define
為 .NET [SeqApp]
插件產生應用程式定義。
例子:
seqcli app define -d "./bin/Debug/netstandard2.2"
選項 | 描述 |
---|---|
-d , --directory=VALUE | 包含 .NET Standard 程序集的目錄;預設為當前目錄 |
--type=VALUE | [SeqApp]插件類型名稱;預設掃描程序集以尋找標有此屬性的單一類型 |
--indented | 使用縮排設定多行定義的格式 |
app install
安裝應用程式套件。
例子:
seqcli app install --package-id 'Seq.App.JsonArchive'
選項 | 描述 |
---|---|
--package-id=VALUE | 要安裝的應用程式的套件 ID |
--version=VALUE | 要安裝的軟體包版本;預設安裝最新版本 |
--feed-id=VALUE | 用於安裝套件的 NuGet feed 的 id;如果只配置了一個 feed,則可以省略 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
app list
列出已安裝的應用程式包。
例子:
seqcli app list
選項 | 描述 |
---|---|
--package-id=VALUE | 要列出的應用程式的套件 ID |
-i , --id=VALUE | 要列出的單一應用程式的 ID |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
app run
託管 .NET [SeqApp]
插件。
例子:
seqcli tail --json | seqcli app run -d "./bin/Debug/netstandard2.2" -p [email protected]
選項 | 描述 |
---|---|
-d , --directory=VALUE | 包含 .NET Standard 程序集的目錄;預設為當前目錄 |
--type=VALUE | [SeqApp]插件類型名稱;預設掃描程序集以尋找標有此屬性的單一類型 |
-p , --property=NAME=VALUE | 指定應用程式的名稱/值設置,例如-p [email protected] -p Subject="Alert!" |
--storage=VALUE | 可以儲存應用程式特定資料的目錄;預設為當前目錄 |
-s , --server=VALUE | Seq伺服器的URL,僅用於應用程式配置(不連接到伺服器);預設將使用connection.serverUrl 值 |
--server-instance=VALUE | Seq伺服器的實例名稱,僅用於應用程式配置;預設沒有實例名稱 |
-t , --title=VALUE | 應用實例標題,僅用於應用配置;預設為佔位符標題。 |
--id=VALUE | 應用實例id,僅用於應用程式配置;預設為佔位符 id。 |
--read-env | 從環境變數中讀取應用程式配置和設置,如 https://docs.datalust.co/docs/seq-apps-in-other-languages 中指定的;忽略除 --directory 和 --type 之外的所有選項 |
app uninstall
卸載應用程式包。
例子:
seqcli app uninstall --package-id 'Seq.App.JsonArchive'
選項 | 描述 |
---|---|
--package-id=VALUE | 要卸載的應用程式包的包id |
-i , --id=VALUE | 待卸載的單一應用程式包id |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
app update
更新已安裝的應用程式套件。
例子:
seqcli app update -n 'HTML Email'
選項 | 描述 |
---|---|
-i , --id=VALUE | 要更新的單一已安裝應用程式的 ID |
-n , --name=VALUE | 要更新的已安裝應用程式的名稱 |
--all | 更新所有已安裝的應用程式;與-i 或-n 不相容 |
--version=VALUE | 要更新到的軟體包版本;預設是更新到關聯 feed 中的最新版本 |
--force | 即使已安裝目標版本也更新應用程式 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
appinstance create
建立已安裝應用程式的實例。
例子:
seqcli appinstance create -t 'Email Ops' --app hostedapp-314159 -p [email protected]
選項 | 描述 |
---|---|
-t , --title=VALUE | 應用程式實例的標題 |
--app=VALUE | 要實例化的已安裝應用包的id |
-p , --property=NAME=VALUE | 指定應用程式的名稱/值設置,例如-p [email protected] -p Subject="Alert!" |
--stream[=VALUE] | 在攝取傳入事件時將其串流傳輸到此應用程式實例;可選擇接受限制應串流哪些事件的訊號表達式,例如signal-1,signal-2 |
--overridable=VALUE | 指定呼叫應用程式時使用者可能會覆蓋的設定名稱 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
appinstance list
列出已安裝應用程式的實例。
例子:
seqcli appinstance list
選項 | 描述 |
---|---|
-t , --title=VALUE | 要列出的應用程式實例的標題 |
-i , --id=VALUE | 要列出的單一應用程式實例的 ID |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
appinstance remove
從伺服器中刪除應用程式實例。
例子:
seqcli appinstance remove -t 'Email Ops'
選項 | 描述 |
---|---|
-t , --title=VALUE | 要刪除的應用程式實例的標題 |
-i , --id=VALUE | 要刪除的單一應用程式實例的 id |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
appinstance update
更新現有應用程式實例。
例子:
seqcli appinstance update --json '{...}'
選項 | 描述 |
---|---|
--json=VALUE | JSON格式的更新後的應用程式實例;這可以使用seqcli appinstance list --json 生成 |
--json-stdin | 從STDIN 以 JSON 形式讀取更新的應用程式實例 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
bench
衡量查詢效能。
選項 | 描述 |
---|---|
-r , --runs=VALUE | 要執行的運行次數;預設值為 10 |
-c , --cases=VALUE | 包含要運行的案例集的 JSON 檔案。預設為一組標準案例。 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
--start=VALUE | 查詢的 ISO 8601 日期/時間 |
--end=VALUE | 要查詢的 ISO 8601 日期/時間 |
--reporting-server=VALUE | 將基準結果傳送到的 Seq 伺服器的位址 |
--reporting-apikey=VALUE | 連接到報告伺服器時使用的 API 金鑰 |
--description=VALUE | 台架測試運行的可選描述 |
--with-ingestion | 基準測試是否應該包括向 Seq 發送事件 |
--with-queries | 基準測試是否應該包括查詢 Seq |
config
查看和設定SeqCli.json
文件中的字段;不帶參數運行以列出所有欄位。
選項 | 描述 |
---|---|
-k , --key=VALUE | 該字段,例如connection.serverUrl |
-v , --value=VALUE | 字段值;如果未指定,該命令將列印目前值 |
-c , --clear | 清除字段 |
dashboard list
列出儀表板。
例子:
seqcli dashboard list
選項 | 描述 |
---|---|
-t , --title=VALUE | 要列出的儀表板的標題 |
-i , --id=VALUE | 要列出的單一儀表板的 ID |
-o , --owner=VALUE | 若要為其列出儀表板的使用者 ID;預設情況下,列出共享儀表板 |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
dashboard remove
從伺服器中刪除儀表板。
例子:
seqcli dashboard remove -i dashboard-159
選項 | 描述 |
---|---|
-t , --title=VALUE | 要刪除的儀表板的標題 |
-i , --id=VALUE | 要刪除的單一儀表板的 ID |
-o , --owner=VALUE | 若要為其刪除儀表板的使用者 ID;預設情況下,共享儀表板被刪除 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
dashboard render
從儀表板圖表產生 CSV 或 JSON 結果集。
例子:
seqcli dashboard render -i dashboard-159 -c 'Response Time (ms)' --last 7d --by 1h
選項 | 描述 |
---|---|
-i , --id=VALUE | 要呈現的單一儀表板的 ID |
-c , --chart=VALUE | 儀表板上要呈現的圖表的標題 |
--last=VALUE | 圖表渲染的持續時間,例如7d ;這將與間隔邊界對齊;必須指定--last 或--start 和--end |
--by=VALUE | 圖表資料的時間片間隔,作為持續時間,例如1h |
--start=VALUE | 查詢的 ISO 8601 日期/時間 |
--end=VALUE | 要查詢的 ISO 8601 日期/時間 |
--signal=VALUE | 要套用的訊號表達式或相交訊號 ID 列表,例如signal-1,signal-2 |
--timeout=VALUE | 執行超時(以毫秒為單位) |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
expressionindex create
建立表達式索引。
例子:
seqcli expressionindex create --expression "ServerName"
選項 | 描述 |
---|---|
-e , --expression=VALUE | 要索引的表達式 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
expressionindex list
列出表達式索引。
例子:
seqcli expressionindex list
選項 | 描述 |
---|---|
-i , --id=VALUE | 要列出的單一表達式索引的 id |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
expressionindex remove
從伺服器中刪除表達式索引。
例子:
seqcli expressionindex -i expressionindex-2529
選項 | 描述 |
---|---|
-i , --id=VALUE | 要刪除的表達式索引的 id |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
feed create
建立 NuGet 來源。
例子:
seqcli feed create -n 'CI' --location="https://f.feedz.io/example/ci" -u Seq --password-stdin
選項 | 描述 |
---|---|
-n , --name=VALUE | Feed 的唯一名稱 |
-l , --location=VALUE | 進料位置;這可能是 NuGet v2 或 v3 feed URL,或是 Seq 伺服器上的本機檔案系統路徑 |
-u , --username=VALUE | 如果需要身份驗證,則連接到 feed 時應提供使用者名稱 Seq |
-p , --password=VALUE | 提要密碼(如果需要身份驗證);請注意--password-stdin 更安全 |
--password-stdin | 從STDIN 讀取 feed 密碼 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
feed list
列出 NuGet 來源。
例子:
seqcli feed list
選項 | 描述 |
---|---|
-n , --name=VALUE | 要列出的 feed 的名稱 |
-i , --id=VALUE | 要列出的單一提要的 ID |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
feed remove
從伺服器中刪除 NuGet 來源。
例子:
seqcli feed remove -n CI
選項 | 描述 |
---|---|
-n , --name=VALUE | 要刪除的 Feed 的名稱 |
-i , --id=VALUE | 要刪除的單一 feed 的 ID |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
feed update
更新現有的 NuGet 來源。
例子:
seqcli feed update --json '{...}'
選項 | 描述 |
---|---|
--json=VALUE | 更新後的 JSON 格式的 NuGet feed;這可以使用seqcli feed list --json 生成 |
--json-stdin | 從STDIN 讀取更新後的 NuGet feed 作為 JSON |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
help
顯示有關可用命令的資訊。
例子:
seqcli help search
選項 | 描述 |
---|---|
-m , --markdown | 產生用於文件的 Markdown |
index list
列出索引。
例子:
seqcli index list
選項 | 描述 |
---|---|
-i , --id=VALUE | 要列出的單一索引的 id |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
index suppress
抑制索引。
例子:
seqcli index suppress -i index-2191448f1d9b4f22bd32c6edef752748
選項 | 描述 |
---|---|
-i , --id=VALUE | 要抑制的索引的 id |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
ingest
從檔案或STDIN
傳送日誌事件。
例子:
seqcli ingest -i log-*.txt --json --filter="@Level <> 'Debug'" -p Environment=Test
選項 | 描述 |
---|---|
-i , --input=VALUE | 要攝取的文件,包括* 通配符;如果未指定,將使用STDIN |
--invalid-data=VALUE | 指定如何處理無效資料: fail (預設)或ignore |
-p , --property=NAME=VALUE | 指定名稱/值屬性,例如-p Customer=C123 -p Environment=Production |
-x , --extract=VALUE | 應用於純文字日誌的擷取模式(指定--json 時忽略) |
--json | 以 JSON 形式讀取事件(預設為純文字) |
-f , --filter=VALUE | 過濾表達式以選擇事件子集 |
-m , --message=VALUE | 與攝取事件相關聯的訊息;支援 https://messagetemplates.org 語法 |
-l , --level=VALUE | 與攝入事件相關的等級或嚴重性;這將覆蓋事件本身中存在的任何級別訊息 |
--send-failure=VALUE | 指定如何處理連線失敗: fail (預設)、 retry 、 continue 或ignore |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
--batch-size=VALUE | 每個請求中傳送到攝取端點的最大事件數;如果未指定,將使用值100 |
license apply
將許可證應用於 Seq 伺服器。
例子:
seqcli license apply --certificate="license.txt"
選項 | 描述 |
---|---|
-c , --certificate=VALUE | 證書文件;文件必須是 UTF-8 文本 |
--certificate-stdin | 從STDIN 讀取許可證書 |
--automatically-refresh | 如果許可證用於訂閱,請定期檢查datalust.co 並在訂閱更改或續訂時自動刷新證書 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
log
將結構化日誌事件傳送到伺服器。
例子:
seqcli log -m 'Hello, {Name}!' -p Name=World -p App=Test
選項 | 描述 |
---|---|
-m , --message=VALUE | 與事件關聯的訊息(預設不發送訊息);支援 https://messagetemplates.org 語法 |
-l , --level=VALUE | 事件的等級或嚴重性(預設為Information ) |
-t , --timestamp=VALUE | 事件時間戳為 ISO-8601(預設使用目前 UTC 時間戳記) |
-x , --exception=VALUE | 要傳送的其他異常或錯誤訊息(如果有) |
-p , --property=NAME=VALUE | 指定名稱/值屬性,例如-p Customer=C123 -p Environment=Production |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
node demote
開始降級當前領導節點。
例子:
seqcli node demote --verbose --wait
選項 | 描述 |
---|---|
--wait | 等待領導者被降職後再退出 |
-y , --confirm | 當提示繼續回答 [y]es |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
node health
探測 Seq 節點的/health
端點,並列印傳回的 HTTP 狀態代碼,如果無法查詢端點,則列印「無法存取」。
例子:
seqcli node health -s https://seq-2.example.com
選項 | 描述 |
---|---|
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
node list
列出 Seq 叢集中的節點。
例子:
seqcli node list --json
選項 | 描述 |
---|---|
-n , --name=VALUE | 要列出的叢集節點的名稱 |
-i , --id=VALUE | 要列出的單一叢集節點的 id |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
print
來自檔案或STDIN
CLEF/JSON 格式的漂亮列印事件。
例子:
seqcli print -i log-20201028.clef
選項 | 描述 |
---|---|
-i , --input=VALUE | 讀取CLEF文件,包含* 通配符;如果未指定,將使用STDIN |
-f , --filter=VALUE | 過濾表達式以選擇事件子集 |
--template=VALUE | 指定輸出範本來控制純文字格式 |
--invalid-data=VALUE | 指定如何處理無效資料: fail (預設)或ignore |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
profile create
建立或替換連接設定檔。
例子:
seqcli profile create -n Production -s https://seq.example.com -a th15ISanAPIk3y
選項 | 描述 |
---|---|
-n , --name=VALUE | 連接設定檔的名稱 |
-s , --server=VALUE | Seq 伺服器的 URL |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰(如果需要) |
profile list
列出連接設定檔。
例子:
seqcli profile list
profile remove
刪除連接設定檔。
例子:
seqcli profile remove -n Production
選項 | 描述 |
---|---|
-n , --name=VALUE | 要刪除的連接設定檔的名稱 |
query
執行 SQL 查詢並接收 CSV 格式的結果。
例子:
seqcli query -q "select count(*) from stream group by @Level" --start="2018-02-28T13:00Z"
選項 | 描述 |
---|---|
-q , --query=VALUE | 要執行的查詢 |
--start=VALUE | 查詢的 ISO 8601 日期/時間 |
--end=VALUE | 要查詢的 ISO 8601 日期/時間 |
--signal=VALUE | 要套用的訊號表達式或相交訊號 ID 列表,例如signal-1,signal-2 |
--timeout=VALUE | 執行超時(以毫秒為單位) |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
retention create
建立保留策略。
例子:
seqcli retention create --after 30d --delete-all-events
選項 | 描述 |
---|---|
--after=VALUE | 策略將刪除事件的持續時間,例如7d |
--delete-all-events | 該策略應刪除所有事件(目前唯一支援的選項) |
--delete=VALUE | 在攝取傳入事件時將其串流傳輸到此應用程式實例;可選擇接受限制應串流哪些事件的訊號表達式 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
retention list
列出保留策略。
例子:
seqcli retention list
選項 | 描述 |
---|---|
-i , --id=VALUE | 要列出的單一保留策略的 ID |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
retention remove
從伺服器中刪除保留策略。
例子:
seqcli retention remove -i retentionpolicy-17
選項 | 描述 |
---|---|
-i , --id=VALUE | 要刪除的單一保留策略的 ID |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
retention update
更新現有的保留策略。
例子:
seqcli retention update --json '{...}'
選項 | 描述 |
---|---|
--json=VALUE | 更新後的 JSON 格式保留策略;這可以使用seqcli retention list --json 生成 |
--json-stdin | 從STDIN 讀取更新後的 JSON 保留策略 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
sample ingest
將範例事件記錄到 Seq 實例中。
例子:
seqcli sample ingest
選項 | 描述 |
---|---|
-y , --confirm | 當提示繼續回答 [y]es |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
--quiet | 不要將攝取的事件回顯到STDOUT |
--batch-size=VALUE | 每個請求中傳送到攝取端點的最大事件數;如果未指定,將使用值100 |
sample setup
使用範例儀表板、訊號、使用者等配置 Seq 實例。
例子:
seqcli sample setup
選項 | 描述 |
---|---|
-y , --confirm | 當提示繼續回答 [y]es |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
search
檢索與給定過濾器相符的日誌事件。
例子:
seqcli search -f "@Exception like '%TimeoutException%'" -c 30
選項 | 描述 |
---|---|
-f , --filter=VALUE | 套用於搜尋的過濾器,例如Host = 'xmpweb-01.example.com' |
-c , --count=VALUE | 要檢索的最大事件數;預設值為 1 |
--start=VALUE | 查詢的 ISO 8601 日期/時間 |
--end=VALUE | 要查詢的 ISO 8601 日期/時間 |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
--signal=VALUE | 要套用的訊號表達式或相交訊號 ID 列表,例如signal-1,signal-2 |
--request-timeout=VALUE | 檢索每頁事件所允許的時間,以毫秒為單位;預設為 100000 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
setting clear
清除運行時可設定的伺服器設定。
選項 | 描述 |
---|---|
-n , --name=VALUE | 設定名稱,例如OpenIdConnectClientSecret |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
setting names
列印所有支援的設定的名稱。
setting set
更改運行時可配置的伺服器設定。
選項 | 描述 |
---|---|
-n , --name=VALUE | 設定名稱,例如OpenIdConnectClientSecret |
-v , --value=VALUE | 設定值,如果接受多個值,則以逗號分隔 |
--value-stdin | 從STDIN 讀取值 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
setting show
列印運行時可配置伺服器設定的目前值。
選項 | 描述 |
---|---|
-n , --name=VALUE | 設定名稱,例如OpenIdConnectClientSecret |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
signal create
創建一個信號。
例子:
seqcli signal create -t 'Exceptions' -f "@Exception is not null"
選項 | 描述 |
---|---|
-t , --title=VALUE | 信號的標題 |
--description=VALUE | 信號的描述 |
-f , --filter=VALUE | 與訊號關聯的濾波器 |
-c , --column=VALUE | 與訊號關聯的列;此參數可以多次使用 |
--group=VALUE | 與訊號關聯的顯式群組名稱;預設是從過濾器推斷群組 |
--no-group | 指定不應推斷任何組別;預設是從過濾器推斷群組 |
--protected | 指定訊號只能由管理員編輯 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
signal import
以換行符號分隔的 JSON 格式匯入訊號。
例子:
seqcli signal import -i ./Exceptions.json
選項 | 描述 |
---|---|
--merge | 更新 ID 與匯入資料中的 ID 相符的訊號;預設是始終創建新訊號 |
-i , --input=VALUE | 要導入的文件;如果未指定,將使用STDIN |
-o , --owner=VALUE | 要為其導入訊號的使用者的 ID;預設情況下,導入共享訊號 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
signal list
列出可用訊號。
例子:
seqcli signal list
選項 | 描述 |
---|---|
-t , --title=VALUE | 要列出的信號的標題 |
-i , --id=VALUE | 要列出的單一訊號的 ID |
-o , --owner=VALUE | 要為其列出訊號的使用者的 ID;預設情況下,列出共享訊號 |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
signal remove
從伺服器上刪除訊號。
例子:
seqcli signal remove -t 'Test Signal'
選項 | 描述 |
---|---|
-t , --title=VALUE | 要刪除的信號的標題 |
-i , --id=VALUE | 要刪除的單一訊號的 ID |
-o , --owner=VALUE | 要刪除訊號的用戶 ID;預設情況下,共享訊號被刪除 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
signal update
更新現有訊號。
例子:
seqcli signal update --json '{...}'
選項 | 描述 |
---|---|
--json=VALUE | JSON 格式的更新訊號;這可以使用seqcli signal list --json 生成 |
--json-stdin | 從STDIN 讀取更新後的 JSON 訊號 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
tail
串流傳輸與過濾器相符的日誌事件。
選項 | 描述 |
---|---|
-f , --filter=VALUE | 應用於流的可選伺服器端過濾器,例如@Level = 'Error' |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
--signal=VALUE | 要套用的訊號表達式或相交訊號 ID 列表,例如signal-1,signal-2 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
template export
將實體匯出到範本文件中。
例子:
seqcli template export -o ./Templates
選項 | 描述 |
---|---|
-o , --output=VALUE | 寫入模板檔案的目錄;該目錄必須存在;任何名稱與匯出範本相符的現有文件都將被覆蓋;預設為. |
-i , --include=VALUE | 要匯出的訊號、儀表板、已儲存查詢、工作區或保留策略的 ID;此參數可以指定多次;預設是導出所有共享實體 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
template import
從模板檔案匯入實體。
例子:
seqcli template import -i ./Templates
選項 | 描述 |
---|---|
-i , --input=VALUE | 從中讀取.template 檔案集的目錄;預設為. |
--state=VALUE | 檔案的路徑,該檔案將保留模板名稱到目標伺服器上建立的實體的 ID 的映射,避免執行多次匯入時出現重複;預設情況下,將使用輸入目錄中的import.state |
--merge | 對於.state 檔案中沒有條目的模板,首先檢查名稱或標題匹配的現有實體;不支援保留策略的合併 |
-g , --arg=NAME=VALUE | 模板參數,例如-g ownerId=user-314159 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
user create
創建用戶。
例子:
seqcli user create -n alice -d 'Alice Example' -r 'User (read/write)' --password-stdin
選項 | 描述 |
---|---|
-n , --name=VALUE | 用戶的唯一用戶名 |
-d , --display-name=VALUE | 有助於識別使用者的長格式名稱 |
-f , --filter=VALUE | 限制使用者可見事件的視圖篩選器 |
-r , --role=VALUE | 授予使用者在伺服器上的權限的角色名稱;如果未指定,將指派預設的新使用者角色 |
-e , --email=VALUE | 使用者的電子郵件地址(為使用者啟用 Gravatar 圖像) |
-p , --password=VALUE | 如果使用使用者名稱/密碼身份驗證,則使用者的初始密碼;請注意--password-stdin 更安全 |
--password-stdin | 如果正在使用使用者名稱/密碼身份驗證,則從STDIN 讀取使用者的初始密碼 |
--no-password-change | 不要強迫使用者在下次登入時更改密碼 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
user list
列出用戶。
例子:
seqcli user list
選項 | 描述 |
---|---|
-n , --name=VALUE | 要列出的用戶的用戶名 |
-i , --id=VALUE | 要列出的單一使用者的 ID |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
user remove
從伺服器中刪除用戶。
例子:
seqcli user remove -n alice
選項 | 描述 |
---|---|
-n , --name=VALUE | 要刪除的用戶的用戶名 |
-i , --id=VALUE | 要刪除的單一使用者的 ID |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
user update
更新現有用戶。
例子:
seqcli user update --json '{...}'
選項 | 描述 |
---|---|
--json=VALUE | JSON格式的更新後的使用者;這可以使用seqcli user list --json 生成 |
--json-stdin | 從STDIN 以 JSON 形式讀取更新後的用戶 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
version
列印目前可執行版本。
workspace create
建立一個工作區。
例子:
seqcli workspace create -t 'My Workspace' -c signal-314159 -c dashboard-628318
選項 | 描述 |
---|---|
-t , --title=VALUE | 工作區的標題 |
--description=VALUE | 工作區的描述 |
-c , --content=VALUE | 若要包含在工作區中的儀表板、訊號或已儲存查詢的 ID |
--protected | 指定工作區只能由管理員編輯 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
workspace list
列出可用的工作區。
例子:
seqcli workspace list
選項 | 描述 |
---|---|
-t , --title=VALUE | 要列出的工作區的標題 |
-i , --id=VALUE | 要列出的單一工作區的 ID |
-o , --owner=VALUE | 要列出其工作空間的使用者的 ID;預設情況下,列出共享工作區 |
--json | 以換行符號分隔的 JSON 格式列印輸出(預設為純文字) |
--no-color | 不要對文字輸出著色 |
--force-color | 強制重定向輸出具有 ANSI 顏色(除非也指定了--no-color ) |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
workspace remove
從伺服器中刪除工作區。
例子:
seqcli workspace remove -t 'My Workspace'
選項 | 描述 |
---|---|
-t , --title=VALUE | 要刪除的工作區的標題 |
-i , --id=VALUE | 要刪除的單一工作區的 ID |
-o , --owner=VALUE | 要刪除其工作空間的使用者的 ID;預設情況下,共享工作區被刪除 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
workspace update
更新現有工作區。
例子:
seqcli workspace update --json '{...}'
選項 | 描述 |
---|---|
--json=VALUE | JSON 格式的更新工作區;這可以使用seqcli workspace list --json 生成 |
--json-stdin | 從STDIN 以 JSON 形式讀取更新後的工作區 |
-s , --server=VALUE | Seq伺服器的URL;預設將使用connection.serverUrl 配置值 |
-a , --apikey=VALUE | 連接到伺服器時使用的 API 金鑰;預設將使用connection.apiKey 配置值 |
--profile=VALUE | 要使用的連接設定檔;預設將使用connection.serverUrl 和connection.apiKey 配置值 |
seqcli ingest
指令可用來將純文字日誌解析為結構化日誌事件。
seqcli ingest -x " {@t:timestamp} [{@l:level}] {@m:*}{:n}{@x:*} "
上面的-x
參數是一個提取模式,它將解析如下事件:
2018-02-21 13:29:00.123 +10:00 [ERR] The operation failed
System.DivideByZeroException: Attempt to divide by zero
at SomeClass.SomeMethod()
提取模式具有簡單的高級語法:
Hello, world!
這樣的模式將符合僅由該問候語組成的日誌記錄語句,{curly braces}
之間的文字是匹配表達式,用於標識要提取的事件的一部分,並且{{
將匹配文字文字{
,而}}
匹配}
。匹配表達式的形式如下:
{name:matcher}
名稱和匹配器都是可選的,但必須指定其中一個。因此, {@t:timestamp}
指定名稱@t
和值timestamp
, {IPAddress}
僅指定名稱,而{:n}
僅指定值(在本例中為內建換行符匹配器)。
name為要提取的屬性名稱;有四個內建屬性名稱需要特殊處理:
@t
- 事件的時間戳@m
- 與事件相關的文字訊息@l
- 事件的級別@x
- 與事件關聯的異常或回溯其他屬性名稱附加到事件負載,因此{Elapsed:dec}
將使用dec
小數匹配器來提取名為Elapsed
的屬性。
沒有名稱的匹配表達式將從輸入中使用,但不會添加到事件負載中。
匹配器識別輸入事件的區塊。
需要不同的匹配器,以便可以將像200OK
這樣的文字分成單獨的屬性,即{StatusCode:nat}{Status:alpha}
。此處, nat
(自然數)匹配器還將結果強制轉換為數值,以便將其以數字形式附加到事件有效負載200
而不是文字"200"
。
匹配器分為三種:
alpha
和nat
這樣的匹配器是內建的命名匹配器。*
、 **
等是非貪婪內容匹配器;這些將匹配任何文本,直到下一個模式元素匹配 ( *
),接下來的兩個元素匹配,依此類推。我們在範例中透過{@m:*}{:n}
元素看到了這一點 - 訊息是直到下一個換行符的所有文字。=
為前綴,例如{Phone:={:nat}-{:nat}-{:nat}}
。這會將123-456-7890
等文字區塊提取到Phone
屬性中。匹配器 | 描述 | 例子 |
---|---|---|
* , ** , ... | 非貪婪內容 | |
alpha | 一個或多個字母 | Abc |
alphanum | 一個或多個字母或數字 | a1b2 |
dec | 十進制數 | 12.345 |
ident | C 風格的識別符 | countOfMatches |
int | 一個整數 | -123 |
iso8601dt | ISO-8601 日期時間 | 2020-01-28T13:50:01.123 |
level | 日誌記錄等級名稱 | INF |
line | 任何單行內容 | one line! |
n | 換行符或序列 | |
nat | 非負數 | 123 |
s | 一個或多個空格或製表符 | |
serilogdt | 預設 Serilog 檔案日誌記錄格式的日期時間 | 2020-01-28 13:50:01.123 +10:00 |
syslogdt | 系統日誌格式的日期時間 | Dec 8 09:12:13 |
t | 單一製表符 | |
timestamp | 任何可識別格式的日期時間 | |
token | 任意非空白字元序列 | 1+x$3 |
trailingident | 帶有縮排尾行的多行內容 | |
unixdt | Unix 時間格式的日期時間,支援秒數(10 位數)或毫秒(12 位數) | 1608694199.999 |
w3cdt | W3C 日誌格式日期/時間對 | 2019-04-02 05:18:01 |
提取模式是從左到右處理的。當遇到第一個不匹配模式時,提取停止;任何無法匹配的剩餘文字將附加到@unmatched
屬性中的結果事件。
透過尋找以要使用的提取模式的第一個元素開頭的行來處理多行事件。如果每個事件的第一行以明確的內容(例如iso8601dt
時間戳)開頭,則此方法效果很好;如果這些行以不太具體的語法開頭,則可以將提取模式的前幾個元素分組,以更準確地識別事件的開始:
{:=[{@t} {@l}]} {@m:*}
這裡是文字文字[
,時間戳標記,相鄰空格
、層級和結束]
全部分組,以便它們構成單一邏輯模式元素來識別事件的開始。
當日誌即時流入seqcli ingest
時,會套用 10 毫秒的截止時間,在此期間必須接收構成事件的任何尾隨行。
journalctl -f -n 0 |
seqcli ingest -x " {@t:syslogdt} {host} {ident:*}: {@m:*}{:n} " --invalid-data=ignore
/var/log/syslog
tail -c 0 -F /var/log/syslog |
seqcli ingest -x " {@t:syslogdt} {host} {ident:*}: {@m:*}{:n} "
此範例擷取以下格式的日誌檔案:
# Fields: date time s-ip cs-method cs-uri-stem cs-uri-query s-port cs-username c-ip cs(User-Agent)
cs(Referer) sc-status sc-substatus sc-win32-status sc-bytes cs-bytes time-taken
出於顯示目的,提取模式包裝在範例中,並且在呼叫時必須全部出現在一個字串參數中。
seqcli ingest -i http.log --invalid-data=ignore -x " {@t:w3cdt} {ServerIP} {@m:={Method} {RequestPath}}
{Query} {Port:nat} {Username} {ClientIP} {UserAgent} {Referer} {StatusCode:nat} {Substatus:nat}
{Win32Status:nat} {ResponseBytes:nat} {RequestBytes:nat} {Elapsed}{:n} "
嵌套的{@m:=
模式用於收集日誌行的子字串以顯示為事件訊息。
seqcli * update
系列指令可以對許多複雜實體類型執行任意更新。
update
指令(如下面範例所示的seqcli signal update
)透過STDIN
接收實體的更新 JSON 表示形式。
這對於jq
等工具和具有本機 JSON 支援的現代 shell(例如 PowerShell)特別有效:
PS > $warnings = (seqcli signal list -i signal-m33302 --json | ConvertFrom-Json)
PS > $warnings.Title
Warnings
PS > $warnings.Title = "Alarms"
PS > (echo $warnings | ConvertTo-Json) | seqcli signal update --json-stdin
PS > seqcli signal list -i signal-m33302 --json
{"Title": "Alarms", "Description": "Automatically created", "Filters": [{"De...