概要
Logtail を使用して正常性ステータスとログ収集の進行状況を照会し、ログ収集の問題をチェックし、ログ収集のステータス監視をカスタマイズすることができます。
ユーザーガイド
ステータスクエリ機能をサポートする Logtail クライアントがインストールされている場合は、クライアントにコマンドを入力してローカルログ収集のステータスを問い合わせることができます。 Logtail をインストールするには、Logtail のインストール方法 (Linux)を参照してください。
/etc/init.d/ilogtaild -h
コマンドをクライアントに入力して、クライアントがローカルログ収集ステータスの照会をサポートしているかどうかを確認します。 logtail insight, version
キーワードが返された場合、この関数は Logtail クライアントでサポートされていることを示します。
/etc/init.d/ilogtaild -h
Usage: ./ilogtaild { start | stop (graceful, flush data and save checkpoints) | force-stop | status | -h for help}$
logtail insight, version : 0.1.0
commond list :
status all [index]
get logtail running status
status active [--logstore | --logfile] index [project] [logstore]
list all active logstore | logfile. if use --logfile, please add project and logstore. default --logstore
status logstore [--format=line | json] index project logstore
get logstore status with line or json style. default --format=line
status logfile [--format=line | json] index project logstore fileFullPath
get log file status with line or json style. default --format=line
status history beginIndex endIndex project logstore [fileFullPath]
query logstore | logfile history status.
index : from 1 to 60. in all, it means last $(index) minutes; in active/logstore/logfile/history, it means last $(index)*10 minutes
コマンド | 機能 | クエリの時間間隔 | 統計の時間ウィンドウ |
---|---|---|---|
all | Logtail の実行状態を照会 | 最後の 60 分 | 1 分 |
active | 現在のアクティブなログストアまたはログファイルの照会(収集されたデータを含む) | 最後の 600 分 | 10 分 |
logstore | ログストアの収集ステータスを照会 | 最後の 600 分 | 10 分 |
logfile | ログファイルの収集ステータスを照会 | 最後の 600 分 | 10 分 |
history | ある期間にわたってログストアまたはログファイルの収集ステータスを照会 | 最後の 600 分 | 10 分 |
- コマンドの
index
パラメーターは、時間ウィンドウのインデックス値を表し、これは現在の時間から数えられています。 有効範囲は 1~60 です。 統計の時間枠が 1 分の場合、現在の時刻から(index、 index-1)
分のクエリを実行することを示します。 統計の時間ウィンドウが 10 分の場合は、(10*index, 10*(index-1))
を現在の時刻からクエリします。 - すべてのクエリコマンドは status サブコマンドに属しているため、メインコマンドは status です。
allコマンド
コマンドフォーマット/etc/init.d/ilogtaild status all [ index ]
/etc/init.d/ilogtaild status all 1
ok
/etc/init.d/ilogtaild status all 10
busy
アウトプットの説明
アイテム | 説明 | 優先度 | ソリューション |
---|---|---|---|
ok | 現在のステータスは正常です。 | N/A | 何もする必要はありません。 |
busy | 現在の収集速度は速く、Logtail は正常に動作しています。 | N/A | 何もする必要はありません。 |
many_log_files | 収集されるログファイルの数が多くなりました。 | 低い | 構成で収集する必要のないファイルがあるかチェックします。 |
process_block | 現在のログ解析がブロックされています。 | 低い | ログの生成が速すぎるかどうかを確認してください。 引き続きこのアウトプットが表示される場合、必要に応じて起動パラメータの設定を変更して、CPU使用率の上限またはネットワーク上の同時送信数の制限を変更してください。 |
send_block | 現行の送信はブロックされています。 | 比較的高い | ブロックされています。 ログの生成が速すぎるか、ネットワークが正常であるかを確認してください。 引き続きこのアウトプットが表示される場合、必要に応じて起動パラメータの設定を変更して、CPU使用率の上限またはネットワーク上の同時送信数の制限を変更してください。 |
send_error | ログデータのアップロードに失敗しました。 | 高い | 収集エラー診断を参照してください。 |
アクティブコマンド
コマンドフォーマット/etc/init.d/ilogtaild status active [--logstore] index
/etc/init.d/ilogtaild status active --logfile index project-name logstore-name
- コマンド
active [--logstore] index
は、現在アクティブなログストアを照会するために使用されます。--logstore
パラメーターは、コマンドの意味を変えずに削除することができます。 active --logfile index project-name logstore-name
コマンドは、プロジェクトのログストア内のすべてのアクティブなログファイルを表示するために使用されます。- Active コマンドは、アクティブなログファイルをレベルごとに表示するために使用されます。 まず、現在アクティブなログストアを見つけて、このログストア内のアクティブなログファイルを照会することを推奨します。
/etc/init.d/ilogtaild status active 1
sls-zc-test : release-test
sls-zc-test : release-test-ant-rpc-3
sls-zc-test : release-test-same-regex-3
/etc/init.d/ilogtaild status active --logfile 1 sls-zc-test release-test
/disk2/test/normal/access.log
アウトプットの説明
active --logstore index
コマンドを実行するために、現在アクティブな全てのログストアがproject-name :logstore-name
の形式でアウトプットされます。 コマンドactive --logfile index project-name logstore-name
を実行すると、アクティブログファイルの完全なパスがアウトプットされます。- 現在のクエリウィンドウにログ収集アクティビティのないログストアまたはログファイルはアウトプットされません。
Logstore コマンド
/etc/init.d/ilogtaild status logstore [--format={line|json}] index project-name logstore-name
- logstore コマンドは、指定したプロジェクトとログストアの収集状況を LINE または JSON 形式でアウトプットするために使用されます。
--format =
パラメーターが設定されていない場合、デフォルトで--format = line
が選択されます。 エコー情報はLINE形式で返されます :--format
パラメーターはlogstore
の後ろに置く必要があることにご注意ください。- このログストアが使用できない場合、または現在のクエリウィンドウでログ収集アクティビティがない場合は、LINE 形式の空のアウトプットと JSON 形式の
ヌル値
が取得されます。
/etc/init.d/ilogtaild status logstore 1 sls-zc-test release-test-same
time_begin_readable : 17-08-29 10:56:11
time_end_readable : 17-08-29 11:06:11
time_begin : 1503975371
time_end : 1503975971
project : sls-zc-test
logstore : release-test-same
status : ok
config : ##1.0##sls-zc-test$same
read_bytes : 65033430
parse_success_lines : 230615
parse_fail_lines : 0
last_read_time : 1503975970
read_count : 687
avg_delay_bytes : 0
max_unsend_time : 0
min_unsend_time : 0
max_send_success_time : 1503975968
send_queue_size : 0
send_network_error_count : 0
send_network_quota_count : 0
send_network_discard_count : 0
send_success_count : 302
send_block_flag : false
sender_valid_flag : true
/etc/init.d/ilogtaild status logstore --format=json 1 sls-zc-test release-test-same
{
"avg_delay_bytes" : 0,
"config" : "##1.0##sls-zc-test$same",
"last_read_time" : 1503975970,
"logstore" : "release-test-same",
"max_send_success_time" : 1503975968,
"max_unsend_time" : 0,
"min_unsend_time" : 0,
"parse_fail_lines" : 0,
"parse_success_lines" : 230615,
"project" : "sls-zc-test",
"read_bytes" : 65033430,
"read_count" : 687,
"send_block_flag" : false,
"send_network_discard_count" : 0,
"send_network_error_count" : 0,
"send_network_quota_count" : 0,
"send_queue_size" : 0,
"send_success_count" : 302,
"sender_valid_flag" : true,
"status" : "ok",
"time_begin" : 1503975371,
"time_begin_readable" : "17-08-29 10:56:11",
"time_end" : 1503975971,
"Maid": "17-08-29 11:06:11"
}
アウトプットの説明
キーワード | 説明 | ユニット |
---|---|---|
Status | この Logstore の全体的なステータス。 特定のステータス、説明、および変更方法については、次の表を参照してください。 | N/A |
time_begin_readable | 読み込み開始になる時刻。 | N/A |
time_end_readable | 読み込み終了になる時刻。 | N/A |
time_begin | 統計の開始時刻。 | Unix タイムスタンプ、秒 |
time_end | 統計の終了時刻。 | Unix タイムスタンプ、秒 |
project | プロジェクト名。 | N/A |
logstore | Logstore 名。 | N/A |
config | コレクション構成の名前( ## 1.0 ## , project, $ , config)で構成されるグローバル一意の構成名。
|
N/A |
read_bytes | ウィンドウで読み取られたログの数。 | Byte |
parse_success_lines | ウィンドウ内で正常に解析された行の数。 | 行 |
parse_fail_lines | ウィンドウ内のログ解析に失敗した行数。 | 行 |
last_read_time | ウィンドウ内での最後の読み取り時間。 | Unix タイムスタンプ、秒 |
Read_count | ウィンドウ内のログ読み込みの数。 | 回 |
avg_delay_bytes | ウィンドウ内の各読み込み時の現在のオフセットとファイルサイズの差の平均。 | Byte |
max_unsend_time | ウィンドウが終了したときの送信キュー内の未送信データパケットの最大時間。 キューが空の場合、値は0です。 | Unixタイムスタンプ、秒 |
min_unsend_time | ウィンドウが終了したときの送信キュー内の未送信データパケットの最小時間。 キューが空の場合、値は0です。 | Unixタイムスタンプ、秒 |
max_send_success_time | ウィンドウに正常に送信されたデータの最大時間。 | Unixタイムスタンプ、秒 |
send_queue_size | ウィンドウが終了したときの現在の送信キュー内の未送信データパケットの数。 | パケット |
send_network_error_count | ネットワークエラーによるウィンドウ内の未送信データパケット数。 | パケット |
send_network_quota_count | クォータを超過したために送信されなかったデータパケットの数。 | パケット |
send_network_discard_count | データの例外または許可の問題によりウィンドウ内で破棄されたデータパケットの数。 | パケット |
send_success_count | ウィンドウで正常に送信されたデータパケットの数。 | パケット |
send_block_flag | ウィンドウの終了時に送信キューがブロックされるかどうか。 | N/A |
sender_valid_flag | ウィンドウの終了時にこのログストアの送信フラグが有効かどうかを示します。Trueはフラグが有効であることを意味し、falseはネットワークエラーまたはクォータエラーのためにフラグが無効であることを意味します。 | N/A |
ステータス | 説明 | 処理方法 |
---|---|---|
ok | Logstore は正常に実行されています。 | 何もする必要はありません。 |
process_block | ログ解析がブロックされている | ログの生成が速すぎるかどうかを確認してください。 このアウトプットが続く場合は、必要に応じて起動パラメータの設定を変更して、CPU使用率の上限またはネットワーク上の同時送信数の制限を変更します。 |
parse_fail | ログ解析が失敗しました。 | ログ形式がログ収集構成と一致しているかどうかを確認します。 |
send_block | 現行の送信はブロックされています。 | ブロックされています。 ログの生成が速すぎるか、ネットワークが正常であるかを確認してください。 このアウトプットが続く場合は、必要に応じて起動パラメータの設定を変更して、CPU使用率の上限またはネットワーク上の同時送信数の制限を変更します。 |
sender_invalid | ログデータの送信中に例外が発生しました。 | ネットワークの状態を確認してください。 ネットワークが正常な場合は、収集エラークエリ:収集エラー診断を参照してください。 |
Logfile コマンド
コマンドフォーマット/etc/init.d/ilogtaild status logfile [--format={line|json}] index project-name logstore-name fileFullPath
- logfile コマンドは、特定のログファイルの収集状況を LINE またはJSON形式で出力するために使用します。
--format =
パラメーターが設定されていない場合、デフォルトで--format = line
が選択されます。 エコー情報は LINE 形式で返されます。- このログファイルが利用できない場合、または現在のクエリウィンドウでログ収集アクティビティがない場合は、LINE 形式の空の出力、または JSON 形式の
ヌル値
を取得します。 --format
パラメーターはlogfile
の後ろに置く必要があります。filefullpath
は絶対パス名でなければなりません。
/etc/init.d/ilogtaild status logfile 1 sls-zc-test release-test-same /disk2/test/normal/access.log
time_begin_readable : 17-08-29 11:16:11
time_end_readable : 17-08-29 11:26:11
time_begin : 1503976571
time_end : 1503977171
project : sls-zc-test
logstore : release-test-same
status : ok
config : ##1.0##sls-zc-test$same
file_path : /disk2/test/normal/access.log
file_dev : 64800
file_inode : 22544456
file_size_bytes : 17154060
file_offset_bytes : 17154060
read_bytes : 65033430
parse_success_lines : 230615
parse_fail_lines : 0
last_read_time : 1503977170
read_count : 667
avg_delay_bytes : 0
/etc/init.d/ilogtaild status logfile --format=json 1 sls-zc-test release-test-same /disk2/test/normal/access.log
{
"avg_delay_bytes" : 0,
"config" : "##1.0##sls-zc-test$same",
"file_dev" : 64800,
"file_inode" : 22544456,
"file_path" : "/disk2/test/normal/access.log",
"file_size_bytes" : 17154060,
"last_read_time" : 1503977170,
"logstore" : "release-test-same",
"parse_fail_lines" : 0,
"parse_success_lines" : 230615,
"project" : "sls-zc-test",
"read_bytes" : 65033430,
"read_count" : 667,
"read_offset_bytes" : 17154060,
"status" : "ok",
"time_begin" : 1503976571,
"time_begin_readable" : "17-08-29 11:16:11",
"time_end" : 1503977171,
"time_end_readable" : "17-08-29 11:26:11"
}
アウトプットの説明
キーワード | 説明 | ユニット |
---|---|---|
Status | 現在のウィンドウ期間におけるこのログファイルの収集ステータス。 logstoreコマンドのステータスを参照してください。 | N/A |
time_begin_readable | 読み込み開始になる時刻。 | N/A |
time_end_readable | 読み込み終了になる時刻。 | N/A |
time_begin | 統計の開始時刻。 | Unix タイムスタンプ、秒 |
time_end | 統計の終了時刻。 | Unix タイムスタンプ、秒 |
project | プロジェクト名。 | N/A |
logstore | Logstore 名 | N/A |
file_path | ログファイルのパス。 | N/A |
file_dev | ログファイルのデバイスID。 | N/A |
file_inode | ログファイルの iノード。 | N/A |
file_size_bytes | ウィンドウ内で最後にスキャンされたファイルのサイズ。 | Byte |
read_offset_bytes | このファイルの解析オフセット。 | Byte |
config | コレクション構成の名前( ## 1.0 ## ,project, $ ,config)で構成されるグローバル一意の構成名。
|
N/A |
read_bytes | ウィンドウで読み取られたログの数。 | Byte |
parse_success_lines | ウィンドウ内で正常に解析された行の数。 | 行 |
parse_fail_lines | ウィンドウ内のログ解析に失敗した行数。 | 行 |
last_read_time | ウィンドウ内での最後の読み取り時間。 | Unix タイムスタンプ、秒 |
read_count | ウィンドウ内のログ読み込みの数。 | 回 |
avg_delay_bytes | ウィンドウ内の各読み込み時の現在のオフセットとファイルサイズの差の平均。 | Byte |
履歴コマンド
コマンドフォーマット/etc/init.d/ilogtaild status history beginIndex endIndex project-name logstore-name [fileFullPath]
- 履歴コマンドは、一定期間に渡ってログストアまたはログファイルの収集ステータスを照会するために使用されます。
beginIndex
とendIndex
は、コード照会ウィンドウのインデックスの開始と終了の値を表します。beginIndex <= endIndex
は必須です。fileFullPath
がパラメーターに入力されていない場合、コードはLogstoreの収集情報を照会します。 それ以外の場合は、ログファイルの収集情報が照会されます。
/etc/init.d/ilogtaild status history 1 3 sls-zc-test release-test-same /disk2/test/normal/access.log
begin_time status read parse_success parse_fail last_read_time read_count avg_delay device inode file_size read_offset
17-08-29 11:26:11 ok 62.12MB 231000 0 17-08-29 11:36:11 671 0B 64800 22544459 18.22MB 18.22MB
17-08-29 11:16:11 ok 62.02MB 230615 0 17-08-29 11:26:10 667 0B 64800 22544456 16.36MB 16.36MB
17-08-29 11:06:11 ok 62.12MB 231000 0 17-08-29 11:16:11 687 0B 64800 22544452 14.46MB 14.46MB
$/etc/init.d/ilogtaild status history 2 5 sls-zc-test release-test-same
begin_time status read parse_success parse_fail last_read_time read_count avg_delay send_queue network_error quota_error discard_error send_success send_block send_valid max_unsend min_unsend max_send_success
17-08-29 11:16:11 ok 62.02MB 230615 0 17-08-29 11:26:10 667 0B 0 0 0 0 300 false true 70-01-01 08:00:00 70-01-01 08:00:00 17-08-29 11:26:08
17-08-29 11:06:11 ok 62.12MB 231000 0 17-08-29 11:16:11 687 0B 0 0 0 0 303 false true 70-01-01 08:00:00 70-01-01 08:00:00 17-08-29 11:16:10
17-08-29 10:56:11 ok 62.02MB 230615 0 17-08-29 11:06:10 687 0B 0 0 0 0 302 false true 70-01-01 08:00:00 70-01-01 08:00:00 17-08-29 11:06:08
17-08-29 10:46:11 ok 62.12MB 231000 0 17-08-29 10:56:11 692 0B 0 0 0 0 302 false true 70-01-01 08:00:00 70-01-01 08:00:00 17-08-29 10:56:10
アウトプットの説明
- このコマンドは、ログストアまたはログファイルの履歴収集情報をウィンドウごとに1行ずつアウトプットします。
- 各出力フィールドの説明については、
logstore
とlogfile
コマンドを参照してください。
戻り値
通常の戻り値
/etc/init.d/ilogtaild status logfile --format=json 1 error-project error-logstore /no/this/file
null
echo $?
0
/etc/init.d/ilogtaild status all
ok
echo $?
0
例外戻り値
戻り値 | タイプ | アウトプット | トラブルシューティング |
---|---|---|---|
10 | 無効なコマンドまたは不足しているパラメータ | invalid param, use -h for help. |
ヘルプを表示するには -h と入力してください。
|
1 | クエリは1~60の時間枠を越えています | invalid query interval |
ヘルプを表示するには -h と入力してください。
|
1 | 特定の時間枠をクエリできません | query fail, error: $(error) 詳細は、errno説明を参照してください。
|
これは、Logtailの実行時間がクエリの期間よりも短い場合に発生する可能性があります。 問題が解決しない場合は、SB Cloud サポートセンターにお問い合わせください。 |
1 | 一致するクエリ時間枠がありません | no match time interval, please check logtail Status |
Logtail が実行中であることを確認してください。 問題が解決しない場合は、SB Cloud サポートセンターにお問い合わせください。 |
1 | クエリウィンドウにはデータがありません | invalid profile, maybe logtail Restart |
Logtail が実行中であることを確認してください。 問題が解決しない場合は、SB Cloud サポートセンターにお問い合わせください。 |
/etc/init.d/ilogtaild status nothiscmd
invalid param, use -h for help.
echo $?
10
/etc/init.d/ilogtaild status/all 99
invalid query interval
echo $?
1
ユースケース
Logtail ヘルスチェックを使用して、Logtail の全体的なステータスを把握し、収集の進行状況のクエリを使用して、収集中に関連する測定基準を取得することができます。 このようにして得られた情報により、カスタマイズされた方法でログ収集を監視することができます。
Logtail 実行状態の監視
all
コマンドを使ってLogtail の実行状況を監視します。
動作原理:毎分 Logtail の現在のステータスが問い合わせされます。 Logtail がprocess_block
、send_block
、または send_error
ステータスの下に5分間あると、アラームがトリガされます。
特定のシナリオでのログ収集の重要性に応じて、監視するアラームの持続時間と状態の範囲を調整できます。
ログ収集進行状況の監視
logstore
コマンドを使って Logstore の収集の進捗状況を監視します。
動作原理:このLogstore
のステータス情報を取得するために、 logstore コマンドが10分ごとに呼び出されます。 avg_delay_bytes
が1 MB(1024 * 1024)を超えているかstatus
がok
でなければ、アラームがトリガーされます。
avg_delay_bytes
アラームしきい値は、ログ収集トラフィックに応じて調整できます。
ログファイルの収集が完了したかどうかの判断
logfile
コマンドを使ってログファイルの収集が完了したかどうかを確認します。
動作原理:ログファイルへの書き込みが終了すると、このファイルのステータス情報を取得するために10分ごとに logfile
コマンドが呼び出されます。 このファイルが read_offset_bytes
とfile_size_bytes
に同じ値を示していれば、このログファイルの収集が完了したことを意味します。
ログ収集問題のトラブルシューティング
サーバ上でログ収集が遅れている場合は、history
コマンドを使用して、このサーバー上の関連する収集情報を問い合わせます。
send_block_flag
がtrueであれば、データ収集の遅延ブロックがネットワーク内にあることを示します。- 送信関連のパラメーターは正常ですが、
avg_delay_bytes
値は通常よりも高くなります。- 平均ログ解析速度は、
read_bytes
を使って計算して、ログ生成トラフィックが正常であるかどうかを判断することができます。 - Logtailのリソース使用制限を適切に調整することができます。
- 平均ログ解析速度は、
parse_fail_lines
の値は0より大きいです。ログ収集の解析設定をすべてのログにマップできるかどうかを確認します。