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
ZabbixAPIをつんつんした
Search
2bo
June 03, 2021
Programming
0
290
ZabbixAPIをつんつんした
OSC Nagoya 2021
Pyhton東海/JuliaTokai 合同ミニ勉強会
発表資料
2bo
June 03, 2021
Tweet
Share
More Decks by 2bo
See All by 2bo
PyScriptの話
2bo
0
140
名古屋とお菓子🍪
2bo
0
300
名古屋 勉強会 会場 選定 2019
2bo
2
130
お城Pythonの作り方/OshiroPython
2bo
1
580
Python勉強法
2bo
0
750
Python 環境構築方法 2016
2bo
2
1.6k
Python東海の紹介(仮).py
2bo
0
320
pep8を読んでみよう.pdf
2bo
0
170
Other Decks in Programming
See All in Programming
ONE WEDGE_company_guide
1wedge_one
0
380
オブジェクト指向のリ・オリエンテーション~歴史を振り返り、AI時代に向きなおる~
hanyudaeiiti
9
5.6k
SpringBoot+MyBatisで例外が出たときどこを見るか
syukai
0
110
CircleCIを活用して AWSへの継続的デリバリーを 実践する
coconala_engineer
1
230
try! Swift Tokyo 2024 参加報告 / try! Swift Tokyo 2024 Report
hironytic
0
170
雑に思考を整理する技術と効能
konifar
55
25k
Build with AI 2024 Seoul - 제로부터 시작하는 Flutter with Gemini 생활 - 박제창
itsmedreamwalker
0
200
CQRS/ES avec Symfony, c’est (trop) bien !
jeremyfreeagent
1
630
コードレビューで学ぶ!Kotlinオブジェクト指向デザインパターン
akkie76
2
180
What We Can Learn From OSS
inouehi
0
400
Changed Rules: Architectures with Lightweight Stores
manfredsteyer
PRO
0
230
Site Reliability Engineering for GMO
pyama86
6
930
Featured
See All Featured
Writing Fast Ruby
sferik
620
60k
Embracing the Ebb and Flow
colly
79
4.1k
Art, The Web, and Tiny UX
lynnandtonic
288
19k
Automating Front-end Workflow
addyosmani
1355
200k
RailsConf 2023
tenderlove
2
530
What’s in a name? Adding method to the madness
productmarketing
PRO
15
2.6k
The Cost Of JavaScript in 2023
addyosmani
14
3.8k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
9
8.3k
Side Projects
sachag
451
41k
Fantastic passwords and where to find them - at NoRuKo
philnash
36
2.5k
The Language of Interfaces
destraynor
151
23k
Web development in the modern age
philhawksworth
202
10k
Transcript
ZabbixAPIΛͭΜͭΜͨ͠ OSC2021 Online/Nagoya( community = “Python౦ւ”, date = “2021/05/29”,
location = [“Zoom”, “YoutubeLive”] )
Zabbixɺ͝ଘͰ͔͢ʁ
৭ʑͳπʔϧΛࢹͰ͖Δ ΦʔϓϯιʔειϑτΣΞͰ͢
https://www.zabbix.com/jp/features ΑΓ
͓ࣄ͔ΒΑ͘͏ͷͰ͕͢ɺ ࡉʑͱͨ͠ॲཧΛWebͰϙνϙν ਏ͍ͷͰAPIΛΑ͘ୟ͖·͢
طʹZabbixAPIΛ؆୯ʹ͑Δ PythonϞδϡʔϧଟ͍ͷͰ͕͢
ZabbixυΩϡϝϯτʹ͋Δ αϯϓϧJSONΛ ίϐϖͰ͖Δ΄͏͕ ݸਓతʹָͩͬͨͷͰ
ͦΜͳπʔϧΛ࿉͠·ͨ͠
https://github.com/2bobo/pyzbxtool
Կ͕Ͱ͖Δ͔? • APIͷϩάΠϯͱϩάΠϯใͷอ࣋ • API༻ͷJSONΛ͚͛ͭΔͱ݁ՌΛड͚औΔ
ͱ͍͏͘Β͍Կͯ͘͠Ε·ͤΜ
ͦͷΘΓ؆୯Ͱ͢
͍ํ import pyzbx-tool zbx_api = pyzbx-tool.ZabbixAPI("http://example.com", "Admin", "zabbix") version_json =
{ "jsonrpc": "2.0", "method": "apiinfo.version", "params": [], "auth": "", "id": 1 } version = zbx_api.call_api(version_json) print(version)
ެࣜυΩϡϝϯτͷ JSONΛίϐϖ͢ΕOK https://www.zabbix.com/documentation/current/manual/api/reference/apiinfo/version
؆୯Ͱ͠ΐʁ
ߋʹࠓͳΒͳΜͱʂʂ
ZabbixSenderػೳ ηοτʹ!!
Zabbix Sender? • ZabbixʹࢹσʔλΛ͚͛ͭΔϞϊ • ϗετΩʔɺΛࢦఆͯ͠ZabbixServerʹૹΔͷ͕ͩɺಠࣗͷύ έοτͰ௨৴͞ΕΔ • ZabbixͰఏڙ͞Ε͍ͯΔ͕ɺPython͔Β͛ΕΔͱRasPiͱ͔ Ͱ͏ͱ͖ʹָ
͍ํ import pyzbx-tool zbx_sender = pyzbx-tool.ZabbixSender("zabbix_server_ip", "10051") zbx_sender.add("host", "key", "value")
result = zbx_sender.send() print(result)
͜Ε؆୯Ͱ͠ΐʁ
ຊདྷ͚ͨ΄͏͕Α͍ػೳͰ͕͢ ݸਓతʹΑ͘͏ػೳΛࡶʹ ·ͱΊ͚ͨͩͩͬͨΓ͠·͢
None
ͱ͍͏͜ͱͰɺ Pythonͷͳͷ͔Zabbixͷͳͷ͔ Α͘Θ͔Βͳ͍Ͱͨ͠
͜ΜͳLTͰOKͳPython౦ւʹ ੋඇ͝ࢀՃ͍ͩ͘͞
࣍ճ8ʙ9݄ࠒʹ։࠵༧ఆͰ͢