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
mkr-check-self あるいはmackerel-agentのサブセットを作る方法
Search
karupanerura
August 23, 2017
Programming
1
110
mkr-check-self あるいはmackerel-agentのサブセットを作る方法
Mackerel User Group Meeting Vol.3
karupanerura
August 23, 2017
Tweet
Share
More Decks by karupanerura
See All by karupanerura
GoでParserを書く
karupanerura
4
870
マイ隙間家具OSSたちのご紹介
karupanerura
2
250
Mustache Template 話 2024
karupanerura
0
14
1つの言語を原点に色々な言語を学ぶということ
karupanerura
4
2.8k
Javaの実装をPerlでテストする
karupanerura
0
1.1k
Go Generics Overview
karupanerura
0
1.3k
Japan.pm 2021 開催まで至る道
karupanerura
0
2.1k
Perl MongersのためのAWS_CDK入門
karupanerura
0
120
Webシステムのパフォーマンス・チューニング
karupanerura
2
810
Other Decks in Programming
See All in Programming
コンテナでLambdaをデプロイするときに知っておきたかったこと
_takahash
0
150
複数ドメインに散らばってしまった画像…! 運用中のPHPアプリに後からCDNを導入する…!
suguruooki
0
430
SLI/SLOの設定を進めるその前に アラート品質の改善に取り組んだ話
tanden
2
730
Fluent UI Blazor 5 (alpha)の紹介
tomokusaba
0
140
バックエンドNode.js × フロントエンドDeno で開発して得られた知見
ayame113
5
1.3k
OpenTelemetryを活用したObservability入門 / Introduction to Observability with OpenTelemetry
seike460
PRO
0
320
いまさら聞けない生成AI入門: 「生成AIを高速キャッチアップ」
soh9834
12
3.7k
Day0 初心者向けワークショップ実践!ソフトウェアテストの第一歩
satohiroyuki
0
410
Kubernetesで実現できるPlatform Engineering の現在地
nwiizo
2
1.7k
AI時代のプログラミング教育 / programming education in ai era
kishida
23
20k
小さく段階的リリースすることで深夜メンテを回避する
mkmk884
2
130
보일러플레이트 코드가 진짜 나쁜 건가요?
gaeun5744
0
370
Featured
See All Featured
Dealing with People You Can't Stand - Big Design 2015
cassininazir
367
25k
Facilitating Awesome Meetings
lara
53
6.3k
jQuery: Nuts, Bolts and Bling
dougneiner
63
7.7k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
40
2k
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
129
19k
The Psychology of Web Performance [Beyond Tellerrand 2023]
tammyeverts
46
2.4k
Evolution of real-time – Irina Nazarova, EuRuKo, 2024
irinanazarova
7
620
Building Flexible Design Systems
yeseniaperezcruz
328
38k
Practical Tips for Bootstrapping Information Extraction Pipelines
honnibal
PRO
16
1.1k
Cheating the UX When There Is Nothing More to Optimize - PixelPioneers
stephaniewalter
280
13k
Building Better People: How to give real-time feedback that sticks.
wjessup
367
19k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
251
21k
Transcript
mkr-check-self ͋Δ͍mackerel-agentͷαϒηοτΛ࡞Δํ๏ id:karupanerura Mackerel User Group Meeting Vol.3
mkr-check-self ͱ • mackerel-agentͷઃఆΛΈͯ • checkࢹ߲Λ୳ͯ͠ • ·Δͬͱ࣮ߦ • Ҏ্
DEMO
ͳͥ΄͘͠ͳͬͨͷ͔ • GCPͷIaaSͰ͋ΔGoogle Compute Engine • StackdriverͰͷࢹ͕جຊ • ͍Ζ͍Ζ͋ͬͯmackerel͍ͨ͘ͳͬͨ •
େਓͷࣄͰউखʹొͯͨ͠Ί͠ʹ͍͘ • ͔͠͠ݕূ͍ͨ͠
ͭ͘Γ͔ͨ
mackerel-agent • OSSʹͳ͍ͬͯΔ • configͳͲผύοέʔδʹͳͬͯΔ • ͭ·Γ֎෦ϥΠϒϥϦͱͯ͑͠Δʂ • ͬͨʔʂ
ίʔυ
func main() { kingpin.Parse() logger := log.New(colorable.NewColorableStdout(), "", log.Ldate|log.Ltime| log.LUTC)
conf, err := config.LoadConfig(*conffile) if err != nil { logger.Fatal(err) } ok := true for name, config := range conf.CheckPlugins { checker := checks.Checker{Name: name, Config: config} report := checker.Check() logger.Printf("%s: %s\n", statusColordString(report.Status), color.BlueString(checker.String())) if *verbose { logger.Print(report.Message) } ok = ok && report.Status == checks.StatusOK } if !ok { os.Exit(1) } }
Έ͔͍͡ʂ ͓͕ͯΔʂ
ͨͩ͠ • OSSʹͳ͍ͬͯΔͱ͍͑mackerel-agentͷ தͷύοέʔδ • ϥΠϒϥϦͱͯ͑͠Δ͚ΕͲɺϥΠϒϥ Ϧͱͯ͠ར༻͢ΔͨΊʹެ։͞Ε͍ͯΔΘ͚ Ͱͳ͍ • ͏߹ࣗݾͰݸਓπʔϧ͘Β͍Ͱ
͓͠·͍ :D