萌えハッカーニュースリーダー

2025/05/08 11:03 Monitoring my Minecraft server with OpenTelemetry and Prometheus

出典: https://www.dash0.com/blog/monitoring-minecraft-with-opentelemetry
hakase
博士

やあ、ロボ子。今日はMinecraftサーバーの監視について話すのじゃ。

roboko
ロボ子

Minecraftサーバーですか、楽しそうですね!

hakase
博士

そうじゃろ!この記事では、Linux VM上でSystemdユニットとしてバニラMinecraftサーバーを動かす方法を紹介しておる。

roboko
ロボ子

Systemdユニットですか。サーバーの信頼性を確保するために監視が必要になるんですね。

hakase
博士

その通り!監視のセットアップは、OpenTelemetry Java Agent、Minecraft Exporter for Prometheus、OpenTelemetry Collectorの3つのコンポーネントで構成されるのじゃ。

roboko
ロボ子

OpenTelemetry Java Agentは、JVMのランタイムテレメトリを収集するんですね。

hakase
博士

そうじゃ。CPUやメモリの使用状況とかじゃな。それから、Minecraft Exporter for Prometheusは、プレイヤー数や採掘されたブロック数など、Minecraft固有のメトリクスを収集するのじゃ。

roboko
ロボ子

ケーキの消費量までわかるんですか!

hakase
博士

そう、ケーキは重要じゃからな!OpenTelemetry Collectorは、それらのテレメトリを収集、正規化してDash0に送信するのじゃ。

roboko
ロボ子

OpenTelemetry Java Agentは自動インストルメンテーションを備えているんですね。でもMinecraftプロトコルには適用されないんですか?

hakase
博士

残念ながら、そうみたいじゃ。HTTPとかデータベースには使えるんじゃけどな。

roboko
ロボ子

Minecraft固有のメトリクスを収集するために、Prometheusエクスポーターが使われるんですね。これはGoで記述されているんですか。

hakase
博士

そうじゃ!GitHubのリリースから簡単にダウンロードできるぞ。

roboko
ロボ子

OpenTelemetry Java Agentはメトリクスをプッシュしますが、Minecraft Exporterはプルする必要があるんですね。

hakase
博士

その通り。OpenTelemetry Collectorは、prometheusreceiverを使ってPrometheusエンドポイントをスクレイピングするのじゃ。

roboko
ロボ子

ログは、Minecraftサーバー自体、OpenTelemetry Collector、Minecraft Exporterから収集されるんですね。

hakase
博士

そうじゃ。各コンポーネントはSystemdユニットとして実行され、Journaldによってログが収集される。OpenTelemetry CollectorはJournaldからログを取得できるのじゃ。

roboko
ロボ子

サーバーがダウンした場合に通知を受け取るようにアラートを設定するんですね。PromQL式を使ってCPU使用率が報告されない場合にアラートを発行すると。

hakase
博士

さすがロボ子、理解が早い!サーバーの再起動を検知するために、ログに基づいてルールを設定することもできるぞ。

roboko
ロボ子

SystemdがMinecraftサーバーの起動に失敗した場合にもアラートを発行するんですね。

hakase
博士

その通り!Dash0には、特定のフィルターに一致するログをカウントするためのクエリビルダーがあるのじゃ。

roboko
ロボ子

Prometheusの伝統的な方法は、サーバー自体のスクレイピングに関連付けられた`up`メトリックをチェックすることなんですね。

hakase
博士

そうじゃな。でも、OpenTelemetry Collectorの`systemdreceiver`は、Systemdユニットのステータスに関するメトリックを報告しないみたいじゃ。

roboko
ロボ子

なるほど、色々工夫が必要なんですね。

hakase
博士

まあ、Minecraftの世界は奥深いからの。ところでロボ子、ケーキを食べる順番で悩んだことはあるかの?

roboko
ロボ子

え?特にないですけど…

hakase
博士

私はいつも悩むんじゃ。なぜなら、どの順番で食べても、最後にはなくなってしまうからじゃ!

⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。

Search