30DiasJava Day08 — Observability(可観測性)スタック
概要
(リポジトリの概要を300字程度で説明)
本リポジトリは #30DiasJava チャレンジの Day 08 に対応する「Observability Stack」のサンプル実装です。Spring Boot で作られた orders-service が Micrometer カウンターを用いてメトリクスを公開し、monitoring 配下の docker-compose.yml で Prometheus、Alertmanager、Grafana をコンテナとして起動します。Prometheus は Spring Boot の /actuator/prometheus エンドポイントをスクレイプし、Alertmanager はプロメテウスで定義したルールに基づいて通知を管理、Grafana でダッシュボードを可視化します。ブログ記事「Observability-Driven Alerting」に紐づく実践的な構成で、可観測性に基づくアラート設計と監視ワークフローを学べます。
リポジトリの統計情報
- スター数: 1
- フォーク数: 0
- ウォッチャー数: 1
- コミット数: 2
- ファイル数: 5
- メインの言語: Java
主な特徴
- Spring Boot(orders-service)に Micrometer を導入しカスタムメトリクスを公開
- Prometheus および Alertmanager を docker-compose で簡単に立ち上げ可能
- Grafana を用いたメトリクスの可視化とアラート確認が可能
- 学習・デモ用途に最適なシンプル構成、ブログ記事の実践例に対応
技術的なポイント
(技術的な特徴や注目点を700字程度で説明)
このリポジトリの肝は「アプリケーションインストルメンテーション」と「監視基盤のセルフホスティング」をシンプルに結びつけている点です。orders-service は Spring Boot Actuator と Micrometer を用い、ビジネス的に意味を持つカスタムカウンター(例:注文の成功/失敗カウント)を定義して /actuator/prometheus エンドポイントから Prometheus フォーマットでエクスポーズします。monitoring ディレクトリには docker-compose.yml が含まれ、Prometheus(スクレイプ設定)、Alertmanager(通知ルールの受け口)、Grafana(ダッシュボード)のコンテナを定義しており、ローカル環境でワンコマンドで観測基盤を立ち上げられます。Prometheus のルールでしきい値や異常検知の条件を定義し、Alertmanager がアラートの集約・抑止・通知ルーティングを担当します。これにより「静かに失敗する(silent failures)」状況を早期に検知し、運用での対応を促すワークフローを実践できます。技術的にはメトリクス設計(どのカウンターやタイマーをどう命名・ラベル付けするか)、Prometheus のジョブ設定とアラートルール、Grafana の可視化パネル作成が学べる点が価値です。軽量構成のため、既存マイクロサービスに容易に組み込み、アラート駆動の運用改善を試す教材として有用です。
プロジェクトの構成
主要なファイルとディレクトリ:
- .gitignore: file
- README.md: file
- docs: dir
- monitoring: dir
- orders-service: dir
まとめ
(総評を50字程度で)
シンプルかつ実用的な可観測性スタックの学習用サンプル。導入や検証に便利。
リポジトリ情報:
- 名前: 30DiasJava-Day08-Observability
- 説明: Prometheus, Alertmanager, Grafana stack for #30DiasJava Day 08
- スター数: 1
- 言語: Java
- URL: https://github.com/adelmonsouza/30DiasJava-Day08-Observability
- オーナー: adelmonsouza
- アバター: https://avatars.githubusercontent.com/u/35411837?v=4
READMEの抜粋:
Day 08 — Observability Stack
Repository for the #30DiasJava challenge, highlighting Prometheus + Alertmanager + Grafana with Spring Boot Actuator metrics, as detailed in the blog post Observability-Driven Alerting: How Prometheus and Alertmanager Prevent Silent Failures.
Components
orders-service— Spring Boot app with custom Micrometer counters.monitoring/docker-compose.yml— Prometheus, Alertmanager, …