簡易なステータスページを作成するツールです
--toml と --data は必須です。
./statusboard --toml /path/to/statusboard.toml --data /path/to/dataデフォルトでは :8080 で待ち受けるため、ブラウザで http://localhost:8080/ にアクセスします。
./statusboard --toml /path/to/statusboard.toml --data /path/to/data --check問題なければ syntax OK を出力して終了します。
| オプション | 必須 | デフォルト | 説明 |
|---|---|---|---|
-l, --listen |
任意 | :8080 |
バインドするアドレス (address:port) |
--toml |
必須 | なし | TOML設定ファイルへのパス |
--data |
必須 | なし | ログ出力先ディレクトリへのパス |
--check |
任意 | false |
設定の文法チェックのみ実行して終了 |
-v, --version |
任意 | false |
バージョンを表示して終了 |
--toml で指定する設定ファイルです。サンプルは demo.toml を参照してください。
[[category]]
name = "グローバル"
[[category.service]]
name = "API"
command = ["sh", "-c", "exit 0"]category.service.command は必須です。空だと起動時にエラーになります。
lang: HTMLのlang属性。未指定時はjatitle: ページタイトル。未指定時はStatus Boardfavicon: favicon URLnav_title: ナビゲーションタイトル (Markdown可)nav_button_name: ナビゲーションボタン名nav_button_link: ナビゲーションボタンのリンク先header_message: ヘッダーメッセージ (Markdown可)footer_message: フッターメッセージ (Markdown可)powered_by: フッター下部テキスト (Markdown可)num_of_worker: ヘルスチェック並列数 (デフォルト4)max_check_attempts: 失敗時のリトライ回数 (デフォルト3)retry_interval: リトライ間隔 (time.ParseDuration形式、例:"5s")worker_interval: ヘルスチェック間隔 (time.ParseDuration形式、例:"5m")worker_timeout: ヘルスチェックのタイムアウト (time.ParseDuration形式、例:"30s")latest_time_range: 最新状態として扱う期間 (time.ParseDuration形式、例:"1h")
-
[[category]] -
name: カテゴリ名 -
comment: カテゴリ説明 -
hide:trueにすると画面上でカテゴリを非表示 -
[[category.service]] -
name: サービス名 -
command: 実行コマンド配列。例:["sh", "-c", "curl -fsS https://example.com"]
--data で指定したディレクトリ配下に、日付ごとのログファイルが作られます。
- ファイル名形式:
logYYYYMMDD.txt - 各行はJSON形式のログ