Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
Ansible で Vector を導入し Slack 通知とログレベル色分けまでした話
Search
Shuma
December 05, 2025
Programming
41
0
Share
Ansible で Vector を導入し Slack 通知とログレベル色分けまでした話
【LT交流会】 テテミート 大阪#1
Shuma
December 05, 2025
More Decks by Shuma
See All by Shuma
AIの権限設定に悩んでいる話
shubox
0
26
インフラ深掘りLT
shubox
0
33
飲食店長から_SREになった話
shubox
0
18
阿部寛のホームページをSRE観点で改善出来るか考えてみた。
shubox
0
120
一日の終わりに、晩酌しながら眺めたいシステムログの世界
shubox
0
110
プロダクトがクローズした話
shubox
0
92
今も熱いもの!魂を揺さぶる戦士の儀式:マオリ族のハカ
shubox
0
270
信頼性工学とは? ~カツオを題材に~
shubox
0
120
バージョン管理と人生設計の類似点ver2 -リポジトリから学ぶ生きるヒント-
shubox
0
300
Other Decks in Programming
See All in Programming
2026-03-27 #terminalnight 変数展開とコマンド展開でターミナル作業をスマートにする方法
masasuzu
0
320
The Monolith Strikes Back: Why AI Agents ❤️ Rails Monoliths
serradura
0
300
今こそ押さえておきたい アマゾンウェブサービス(AWS)の データベースの基礎 おもクラ #6版
satoshi256kbyte
1
240
メッセージングを利用して時間的結合を分離しよう #phperkaigi
kajitack
3
580
セグメントとターゲットを意識するプロポーザルの書き方 〜採択の鍵は、誰に刺すかを見極めるマーケティング戦略にある〜
m3m0r7
PRO
0
470
一度始めたらやめられない開発効率向上術 / Findy あなたのdotfilesを教えて!
k0kubun
4
2.9k
煩雑なSkills管理をSoC(関心の分離)により解決する――関心を分離し、プロンプトを部品として育てるためのOSSを作った話 / Solving Complex Skills Management Through SoC (Separation of Concerns)
nrslib
4
860
PDI: Como Alavancar Sua Carreira e Seu Negócio
marcelgsantos
0
120
Rethinking API Platform Filters
vinceamstoutz
0
11k
車輪の再発明をしよう!PHP で実装して学ぶ、Web サーバーの仕組みと HTTP の正体
h1r0
3
520
VueエンジニアがReactを触って感じた_設計の違い
koukimiura
0
170
UIの境界線をデザインする | React Tokyo #15 メイントーク
sasagar
1
260
Featured
See All Featured
Building Experiences: Design Systems, User Experience, and Full Site Editing
marktimemedia
0
480
Between Models and Reality
mayunak
3
260
Redefining SEO in the New Era of Traffic Generation
szymonslowik
1
270
A Guide to Academic Writing Using Generative AI - A Workshop
ks91
PRO
1
260
Have SEOs Ruined the Internet? - User Awareness of SEO in 2025
akashhashmi
0
310
The Organizational Zoo: Understanding Human Behavior Agility Through Metaphoric Constructive Conversations (based on the works of Arthur Shelley, Ph.D)
kimpetersen
PRO
0
310
Pawsitive SEO: Lessons from My Dog (and Many Mistakes) on Thriving as a Consultant in the Age of AI
davidcarrasco
0
110
Statistics for Hackers
jakevdp
799
230k
Building Flexible Design Systems
yeseniaperezcruz
330
40k
The Mindset for Success: Future Career Progression
greggifford
PRO
0
310
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.7k
Mozcon NYC 2025: Stop Losing SEO Traffic
samtorres
0
200
Transcript
Ansible で Vector を導入し Slack 通知とログレベル色分けまでした話 1 / 13
自己紹介 名前: Shuma 職種: SRE / インフラエンジニア 興味: IaC, 障害対応,
監視, パフォーマンス改善 最近うれしかったこと 懸賞でカニ当たった!!🦀 Shuma @ShuShuShuBOOOx 文鳥が人生を切り開くのです。 2 / 13
ログ監視、こんな課題ありませんか? 課題 1 手作業でミスが起こりやすい 設定の増減やフィルタ変更が頻繁に発生し、人 的ミスのリスクが高い 課題 2 環境ごとに設定が違う 「この環境だけ設定が違う」問題が頻発し、再現
性がない 課題 3 通知が多すぎて見分けられない 重要度がわからず、すべての通知を同じように 扱ってしまう ↓ Ansible × Vector × Slack で解決! 3 / 13
今日お話しすること 1 Vector とは? 高速・軽量なログ収集ツールの紹介 2 Ansible で自動化 インストールから設定管理まで 3
Slack 通知と色分け ログレベル別に視認性を向上 4 運用してわかったこと 導入効果と学び 4 / 13
SECTION 1 Vector とは? Datadog 社が開発 高速で軽量なログ収集・変換システム YAML で設定 柔軟かつ読みやすい設定ファイル
シンプルな 3段階構成 Sources → Transforms → Sinks VRL で変換処理 Vector Remap Language で柔軟に加工 SOURCES 入力 file, syslog, journald... ↓ TRANSFORMS 変換 filter, remap, aggregate... ↓ SINKS 出力 http, file, elasticsearch... 🔗 vector.dev 5 / 13
SECTION 2 Ansible で Vector を導入 📁 ディレクトリ構成 roles/ vector/
tasks/ main.yml install.yml configure.yml handlers/ main.yml templates/ vector.yaml.j2 group_vars/ all.yml ✨ ポイント 1. validate オプション 設定反映前に構文チェック validate: vector validate --config %s 2. Jinja2 テンプレート 変数で設定を動的生成 src: vector.yaml.j2 3. Handler で再起動 設定変更時のみ自動で反映 notify: Restart Vector 6 / 13
アラート定義を vars で管理 📝 group_vars/all.yml # 有効なアラート一覧 enabled_alerts: [1] name:
app_error level: error [2] name: app_warn level: warn ✓ 不要アラートは行を削除するだけ 🔧 vector.yaml.j2(テンプレート) transforms: {% for alert in enabled_alerts %} filter_{{ alert.name }}: type: filter inputs: ["app_logs"] condition: .level == "{{ alert.level }}" {% endfor %} メリット 1 レビュー可能 メリット 2 履歴が残る メリット 3 再現性◎ 7 / 13
オオカミアラートの排除 🐺 問題:対応不要なログが大量に通知される PHPの不要な例外ログ 対応する必要がないのに通知が来て、本当に重要なアラートが埋もれてしまう 例:よくある除外対象 UserNotFoundException TokenExpiredException ValidationException ↓
除外パターンを Ansible で管理 📝 除外設定のテンプレート化 # group_vars/all.yml exclude_patterns: [1] "UserNotFoundException" [2] "TokenExpiredException" [3] "ValidationException" # vector.yaml.j2 (filter) condition: | !match(.message, r'除外パターン') 8 / 13
SECTION 5 🐺 オオカミアラートの排除 😩 問題 対応不要な PHP 例外ログが Slack
に大量通知 → アラート疲れで本当に重要な通知を見逃すリスク ✅ 解決策 mtail で特定の例外パターンを除外フィルタリング → 本当に対応が必要なアラートのみ通知 📝 除外対象の例 正常系だが例外として出力されるログ ユーザー起因の想定内エラー リトライで自動復旧するエラー Deprecation warning 等の非緊急ログ 12 / 13
SECTION 3 Slack 通知をログレベルで色分け 🎨 色の意味 danger(赤) error / critical
warning(黄) warn good(緑) info 💡 色を見るだけで重要度がわかる 📱 Slack 通知イメージ #alerts [ERROR] Database connection failed [WARN] Memory usage exceeds 80% [INFO] Deployment completed → 「やばいやつ」がすぐわかる! 9 / 13
全体のデータフロー 🖥 アプリサー バー ログ出力 → VECTOR Sources file /
journald → VECTOR Transforms filter + remap → VECTOR Sinks http (Webhook) → 💬 Slack 色分け通知 📦 Ansible Vector インストール ⚙ Jinja2 設定テンプレート生成 🔄 Handler 変更時に自動再起動 入力 変換 出力 10 / 13
SECTION 4 運用してわかったこと 🎯 環境差分がゼロに Ansible 化で「この環境だけ設定が 違う」がなくなった 🔒 設定更新が安全に
PR ベースでレビューできるように なった 🗑 不要アラート削除が楽 vars から1行消すだけで反映され る ⚡ 初動が速くなった Slack の色を見るだけで「やばいや つ」がすぐわかる 「設定をコード化する」ことで、 レビュー・変更履歴・再現性が確保できる 11 / 13
SUMMARY まとめ ✓ Vector は YAML で扱いやすく Ansible と相性◎ ✓
Slack の色分けだけで運用効率が大幅向上 ✓ アラートの vars 管理でスリムな運用を実現 ご清聴ありがとうございました! 質問があればお気軽にどうぞ( ^ω^)・・・ 📚 参考: vector.dev | docs.ansible.com 13 / 13