ProHoster > Blog > Tsamaiso > Mosebetsi o bonolo o nang le litlhokomeliso tse rarahaneng. Kapa histori ea pōpo ea Balerter
Mosebetsi o bonolo o nang le litlhokomeliso tse rarahaneng. Kapa histori ea pōpo ea Balerter
E mong le e mong o rata litemoso.
Ha e le hantle, ho molemo haholo ho tsebisoa ha ho na le ntho e etsahetseng (kapa e lokisitsoe) ho e-na le ho lula le ho sheba li-graph le ho sheba li-anomalies.
'Me lisebelisoa tse ngata li entsoe bakeng sa sena. Alertmanager ho tsoa ho Prometheus ecosystem le vmalert ho tsoa sehlopheng sa lihlahisoa sa VictoriaMetrics. Litsebiso le litlhokomeliso tsa Zabbix Grafana. Lingoliloeng tse ingoletseng ho bash le Telegraph bots tseo nako le nako li hula URL ebe li u joetsa hore na ho na le ho hong ho phoso. Tse ngata tsa tsohle.
Rōna, k'hamphaning ea rona, re ile ra boela ra sebelisa litharollo tse fapaneng ho fihlela re kena ho rarahanang, kapa, ho e-na le hoo, ho se khonehe ho theha litlhokomeliso tse rarahaneng, tse nang le likarolo tse ngata. Seo re neng re se batla le seo re qetetseng ho se etsa se ka tlase ho sehiloeng. TLDR: Ke kamoo morero oa mohloli o bulehileng o hlahileng kateng Balerter
Ka nako e telele re phetse hantle ka litemoso tse hlophisitsoeng Grafana. E, ena hase eona tsela e molemohali. Kamehla ho khothaletsoa ho sebelisa litharollo tse khethehileng, joalo ka Alertmanager. Mme hape re ile ra sheba ho falla ho feta hang. Mme ebe, hanyane ka hanyane, re ne re batla ho feta.
E re ha chate e itseng e oele / e eketsehile ka XX% mme e bile teng ka metsotso e N ho bapisoa le nako e fetileng ea lihora tsa M? Ho bonahala eka o ka leka ho kenya ts'ebetsong sena ka Grafana kapa Alertmanager, empa ha ho bonolo haholo. (Kapa mohlomong ha ho khonehe, nke ke ka bua hona joale)
Lintho li ba thata le ho feta ha qeto ea tlhokomeliso e tlameha ho etsoa ho latela lintlha tse tsoang mehloling e fapaneng. Mohlala o phelang:
Re hlahloba lintlha ho tsoa litsing tse peli tsa Clickhouse, ebe re li bapisa le lintlha tse ling tsa Postgres, ebe re etsa qeto ka tlhokomeliso. Letshwao kapa hlakola
Re bokelletse litakatso tse ngata tse tšoanang hore re nahane ka qeto ea rona. 'Me joale re ile ra leka ho bokella lethathamo la pele la litlhoko / bokhoni ba tšebeletso ena, e e-s'o thehoe.
fihlella mehloli e fapaneng ea data. Ka mohlala, Prometheus, Clickhouse, Postgres
romela litlhokomeliso ho liteishene tse fapaneng - telegram, slack, joalo-joalo.
ha ke ntse ke nahana, ho ile ha hlaka hore ha ke batle tlhaloso e hlalosang, empa bokhoni ba ho ngola mangolo.
ho tsamaisa mengolo ka kemiso
ntlafatso e bonolo ea mangolo ntle le ho qala ts'ebeletso bocha
bokhoni ba ho holisa ts'ebetso ka tsela e itseng ntle le ho nchafatsa ts'ebeletso ho tsoa ho likhoutu tsa mohloli
Lenane lena le hakanngoa 'me mohlomong ha lea nepahala. Lintlha tse ling li ile tsa fetoha, tse ling tsa shoa. Tsohle di jwalo ka tlwaelo.
Ha e le hantle, ke kamoo histori ea Balerter e qalileng kateng.
Ke tla leka ho hlalosa ka bokhutšoanyane se etsahetseng qetellong le kamoo se sebetsang kateng. (E, ehlile, sena ha se pheletso. Ho na le merero e mengata ea ntlafatso ea sehlahisoa. Ke tla emisa kajeno)
Hona e sebetsa?
U ngola lengolo ho Lua moo u romellang likopo ka ho hlaka (ho Prometheus, Clickhouse, joalo-joalo). U fumana likarabo 'me ka tsela e itseng u li sebetsa le ho li bapisa. Ebe o bulela/ tima mofuta o itseng oa tlhokomeliso. Balerter ka boeona e tla romela tsebiso ho liteishene tseo u li lokiselitseng (Imeile, telegram, slack, joalo-joalo). Script e etsoa ka linako tse itseng. Mme ... ka kakaretso, ke phetho)
Ho molemo ho hlahisa ka mohlala:
-- @interval 10s
-- @name script1
local minRequestsRPS = 100
local log = require("log")
local ch1 = require("datasource.clickhouse.ch1")
local res, err = ch1.query("SELECT sum(requests) AS rps FROM some_table WHERE date = now()")
if err ~= nil then
log.error("clickhouse 'ch1' query error: " .. err)
return
end
local resultRPS = res[1].rps
if resultRPS < minResultRPS then
alert.error("rps-min-limit", "Requests RPS are very small: " .. tostring(resultRPS))
else
alert.success("rps-min-limit", "Requests RPS ok")
end
Ho etsahalang mona:
re bonts'a hore script ena e lokela ho etsoa metsotsoana e meng le e meng ea 10
bonts'a lebitso la sengoloa (bakeng sa API, bakeng sa ponts'o ho li-log, bakeng sa ho sebelisoa litekong)
hokela mojule bakeng sa ho hlahisa likutu
hokela mojule ho fihlella sebaka sa ho tobetsa ka lebitso ch1 (khokahanyo ka boeona e hlophisitsoe ho config)
romela kopo ho Clickhouse
ha ho ka ba le phoso, re hlahisa molaetsa ho log ebe rea tsoa
bapisa sephetho sa potso le kamehla (mohlala o phelang, re ka fumana boleng bona, mohlala, ho tsoa polokelong ea Postgres)
bulela kapa tima tlhokomeliso ka ID rps-min-limit
o tla fumana tsebiso haeba boemo ba tlhokomeliso bo fetohile
Mohlala ona o bonolo ebile oa utloahala. Leha ho le joalo, ha e le hantle, bophelong ba sebele mangolo a ka ba malelele le a rarahaneng. Ho bonolo ho ferekana le ho etsa liphoso.
Ka hona, takatso e utloahalang e se e hōlile - ho khona ho ngola liteko bakeng sa mangolo a hau. 'Me ka mofuta oa v0.4.0 sena se hlahile.
Mengolo ea liteko
Mohlala oa tlhahlobo ea script ho tsoa mohlaleng o ka holimo:
-- @test script1
-- @name script1-test
test = require('test')
local resp = {
{
rps = 10
}
}
test.datasource('clickhouse.ch1').on('query', 'SELECT sum(requests) AS rps FROM some_table WHERE date = now()').response(resp)
test.alert().assertCalled('error', 'rps-min-limit', 'Requests RPS are very small: 10')
test.alert().assertNotCalled('success', 'rps-min-limit', 'Requests RPS ok')
Mehato:
bontsha lebitso la mongolo oo teko e ngolwang ka wona
lebitso la teko (bakeng sa lintlha)
hokela mojule oa teko
re bolela hore na ke sephetho sefe se lokelang ho khutlisetsoa bakeng sa kopo e khethehileng ho clickhouse ch1
re hlahloba hore tlhokomeliso (phoso) rps-min-limit e nang le molaetsa o boletsoeng e bitsitsoe
hlahloba hore tlhokomeliso ea rps-min-limit ha e ea koaloa (katleho)
Ke eng hape eo Balerter a ka e etsang?
Ke tla leka ho ama tsa bohlokoa ka ho fetisisa, ka maikutlo a ka, tsebo ea Balerter. U ka bona ntho e 'ngoe le e' ngoe ka ho qaqileng ho websaeteng ea molao https://balerter.com
fumana data ho tswa ho
Clickhouse
lipapatso
MySQL
promethean
loki
romela litsebiso ho likanale
lieha
thelekramo
syslog
tsebisa (litemoso tsa UI komporong ea hau)
imeile
ho hloka kutloano
theha li-graph ho latela data ea hau, kenya setšoantšo sebakeng sa polokelo se lumellanang sa S3 ebe u se hokela ho litsebiso (Mohlala ka litšoantšo)
e o lumella ho fapanyetsana data lipakeng tsa mangolo - Monotlolo oa lefats'e / polokelo ea Boleng
Ngola lilaebrari tsa hau ho Lua 'me u li sebelise ho lingoliloeng (ka mokhoa o ikhethileng, lilaebrari tsa lua li fanoa bakeng sa ho sebetsa le json, csv)
romella likopo tsa HTTP ho tsoa mangolong a hau ('me u fumane likarabo, ehlile)
e fana ka API (ha e so sebetse kamoo re ka ratang)
e romela metrics ka mokhoa oa Prometheus
Ke eng hape eo u ka ratang hore u khone ho e etsa?
Ho se ho hlakile hore basebelisi 'me re batla bokhoni ba ho laola ho qalisoa ha mangolo ho sebelisa syntax cron. Sena se tla etsoa pele ho mofuta oa v1.0.0
Ke kopa ho ts'ehetsa mehloli e mengata ea data le liteishene tsa ho fana ka tsebiso. Ka mohlala, motho e mong o tla hloloheloa MongoDB. Elastic Search for ba bang. Romela SMS le/kapa etsa mehala ho selefounu ya hao. Re batla ho khona ho fumana mangolo eseng feela lifaeleng, empa hape, ka mohlala, ho tsoa ho database. Qetellong, re batla webosaete e bonolo ho basebelisi le litokomane tse betere bakeng sa projeke.
Motho o lula a haelloa ke ntho e itseng) Mona re itšetlehile ka kopo ea sechaba e le hore re behe lintho tse tlang pele ka nepo. Le ho thusa sechaba ho hlokomela tsohle
Qetellong
Rea sebelisa Balerter Ke na le nako e telele joale. Mengolo e mengata e sireletsa khotso ea rona ea kelello. Ke tšepa hore mosebetsi ona o tla ba molemo ho motho e mong.