ClickStack によるホストログの監視
このガイドでは、OpenTelemetry collector を構成して systemd、カーネル、SSH、cron などのシステムサービスからログを収集し、ClickStack でホストのシステムログを監視する方法を説明します。次の内容を学びます。
- システムログファイルを読み取るように OTel collector を構成する
- カスタム構成を適用して ClickStack をデプロイする
- あらかじめ用意されたダッシュボードを使って、ホストログのエラー、警告、サービスのアクティビティを可視化する
本番ホストを構成する前にインテグレーションをテストしたい場合のために、サンプルログを含むデモデータセットも用意されています。
所要時間: 5〜10 分
既存ホストとの統合
このセクションでは、ClickStack の OTel collector の設定を変更し、すべてのシステムログファイル(syslog、auth、kernel、daemon、アプリケーションログ)を読み取ることで、既存ホストから ClickStack にシステムログを送信する方法を説明します。
ご自身の既存環境を設定する前にホストログの統合を試してみたい場合は、"Demo dataset" セクションにある事前構成済みセットアップとサンプルデータを使ってテストできます。
前提条件
- 稼働中の ClickStack インスタンス
- syslog ファイルがあるシステム
- ClickStack の設定ファイルを変更するためのアクセス権限
syslogファイルが存在することを確認する
まず、システムがsyslogファイルを書き込んでいることを確認します:
一般的なsyslogの配置場所:
- Ubuntu/Debian:
/var/log/syslog - RHEL/CentOS/Fedora:
/var/log/messages - macOS:
/var/log/system.log
カスタムOTel collector設定を作成する
ClickStackでは、カスタム設定ファイルをマウントして環境変数を設定することにより、ベースとなるOpenTelemetry Collectorの設定を拡張することができます。
システムの設定を含む host-logs-monitoring.yaml ファイルを作成します:
- モダン Linux(Ubuntu 24.04 以降)
- レガシー Linux(Ubuntu 20.04、RHEL、CentOS)
- macOS
全設定項目:
- 標準的な場所から syslog ファイルを読み込む
- syslog 形式を解析して、タイムスタンプ、ホスト名、ユニット/サービス、PID、メッセージといった構造化フィールドを抽出する
- 元のログタイムスタンプを保持する
- HyperDX でのフィルタリング用に
source: host-logs属性を追加する - 専用パイプラインを使用してログを ClickHouse exporter に転送する
- カスタム設定では、新しいレシーバーとパイプラインだけを定義します
- プロセッサー(
memory_limiter、transform、batch)とエクスポーター(clickhouse)は、ベースの ClickStack 設定ですでに定義されているため、あとは名前で参照するだけです。 - 正規表現パーサーは、syslog フォーマットから systemd ユニット名、PID、その他のメタデータを抽出します
- この設定では、コレクターの再起動時にログを再取り込みしてしまうのを防ぐために
start_at: endを使用します。テスト用途では、すぐに過去のログを確認できるようにstart_at: beginningに変更してください。
ClickStackにカスタム設定を読み込むよう構成する
既存のClickStackデプロイメントでカスタムコレクター設定を有効にするには、次の手順を実行してください:
- カスタム設定ファイルを
/etc/otelcol-contrib/custom.config.yamlにマウントします - 環境変数
CUSTOM_OTELCOL_CONFIG_FILE=/etc/otelcol-contrib/custom.config.yamlを設定します。 - コレクターがログを読み取れるように、syslog ディレクトリをマウントします
オプション1: Docker Compose
ClickStackのデプロイメント構成を更新してください:
オプション2:Docker Run(オールインワンイメージ)
docker runでオールインワンイメージを使用している場合:
ClickStackコレクターがsyslogファイルを読み取るための適切な権限を持っていることを確認してください。本番環境では、読み取り専用マウント(:ro)を使用し、最小権限の原則に従ってください。
HyperDXでのログの確認
設定完了後、HyperDXにログインし、ログが正常に送信されていることを確認してください:
- 検索ビューに移動します
- ソースを「Logs」に設定します
source:host-logsでフィルタしてホスト固有のログを表示しますunit、hostname、pid、messageなどのフィールドを含む構造化されたログエントリが表示されているはずです。


デモ用データセット
本番環境を構成する前にホストログ連携をテストしたいユーザー向けに、現実的なパターンを含む事前生成済みのシステムログからなるサンプルデータセットを提供します。
サンプルデータセットをダウンロードする
サンプルログファイルをダウンロードします:
このデータセットには次の内容が含まれます:
- システムのブートシーケンス
- SSH ログインアクティビティ (成功・失敗の試行)
- セキュリティインシデント (fail2ban による応答を伴うブルートフォース攻撃)
- 計画メンテナンス (cron ジョブ、anacron)
- サービスの再起動 (rsyslog)
- カーネルメッセージとファイアウォールのアクティビティ
- 通常の運用と注目すべきイベントの混在
デモ設定で ClickStack を実行する
デモログと設定を使用して ClickStack を実行します:
このコマンドはログファイルをコンテナ内に直接マウントします。これは静的なデモデータを用いたテスト目的のために行っています。
HyperDX でログを確認する
ClickStack が起動したら、次の手順を実行します:
- HyperDX を開き、自分のアカウントにログインします (アカウントをまだ持っていない場合は先に作成する必要があります)
- Search ビューに移動し、source を
Logsに設定します - 時間範囲を 2025-11-10 00:00:00 - 2025-11-13 00:00:00 に設定します


HyperDX はタイムスタンプをブラウザのローカルタイムゾーンで表示します。デモデータは 2025-11-11 00:00:00 - 2025-11-12 00:00:00 (UTC) の期間をカバーしています。広めの時間範囲を指定しておくことで、どのロケーションからでもデモログが表示されるようにしています。ログが表示されたら、可視化を見やすくするために時間範囲を 24 時間に絞り込むことを推奨します。
ダッシュボードと可視化
ClickStack を使ってホストログのモニタリングを始められるように、システムログ向けの基本的な可視化を提供しています。
あらかじめ用意されたダッシュボードをインポートする
- HyperDX を開き、Dashboards セクションに移動します
- 右上の三点リーダーメニューの下にある Import Dashboard をクリックします

host-logs-dashboard.jsonファイルをアップロードし、Finish Import をクリックします

ダッシュボードを表示する
ダッシュボードは、すべての可視化が事前に設定された状態で作成されます。

主な可視化は次のとおりです:
- 重大度別の時間経過に伴うログボリューム
- ログを生成している上位の systemd ユニット
- SSH ログインアクティビティ(成功 vs 失敗)
- ファイアウォールアクティビティ(ブロック vs 許可)
- セキュリティイベント(ログイン失敗、アクセス禁止、ブロック)
- サービスの再起動アクティビティ
デモデータセットの場合、時間範囲を 2025-11-11 00:00:00 - 2025-11-12 00:00:00 (UTC) に設定してください(ローカルタイムゾーンに応じて調整してください)。インポートされたダッシュボードには、デフォルトでは時間範囲が指定されていません。
トラブルシューティング
カスタム設定が読み込まれない
環境変数が設定されていることを確認してください:
カスタム設定ファイルがマウントされており、読み取り可能であることを確認します:
HyperDX にログが表示されていない
syslog ファイルが存在し、書き込みが行われていることを確認する:
コレクターがログを読み取れていることを確認する:
有効な設定に filelog レシーバーが含まれていることを確認してください。
collector のログにエラーがないか確認する:
デモデータセットを使用している場合は、ログファイルにアクセスできることを確認してください。
ログが正しく解析されない
選択した設定と syslog フォーマットが一致していることを確認してください。
モダンな Linux(Ubuntu 24.04 以降)の場合:
レガシーLinux または macOS の場合:
形式が一致しない場合は、カスタム OTel collector 設定の作成 セクションで適切な設定タブを選択してください。
次のステップ
ホストログの監視を設定したら、次の作業を行ってください:
- 重要なシステムイベント(サービス障害、認証失敗、ディスク警告)向けのアラートを設定する
- 特定のサービスを監視するために、ユニット単位でフィルタリングする
- 包括的なトラブルシューティングのために、ホストログとアプリケーションログを相関付ける
- セキュリティ監視(SSH ログイン試行、sudo 使用状況、ファイアウォールブロック)向けのカスタムダッシュボードを作成する
本番環境への移行
このガイドでは、迅速なセットアップのために、ClickStack に組み込まれている OpenTelemetry Collector を拡張して利用します。本番環境での運用では、独自の OTel collector を実行し、ClickStack の OTLP エンドポイントにデータを送信することを推奨します。本番向けの設定については、OpenTelemetry データの送信 を参照してください。