เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฏ เด…เดฒเต‡เตผเดŸเตเดŸเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดŽเดณเตเดชเตเดชเดฎเตเดณเตเดณ เดœเต‹เดฒเดฟ. เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดฌเดฒเต‡เตผเดŸเตเดŸเดฑเดฟเดจเตเดฑเต† เดธเตƒเดทเตเดŸเดฟเดฏเตเดŸเต† เดšเดฐเดฟเดคเตเดฐเด‚

เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฏ เด…เดฒเต‡เตผเดŸเตเดŸเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดŽเดณเตเดชเตเดชเดฎเตเดณเตเดณ เดœเต‹เดฒเดฟ. เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดฌเดฒเต‡เตผเดŸเตเดŸเดฑเดฟเดจเตเดฑเต† เดธเตƒเดทเตเดŸเดฟเดฏเตเดŸเต† เดšเดฐเดฟเดคเตเดฐเด‚

เดŽเดฒเตเดฒเดพเดตเดฐเตเด‚ เด…เดฒเต‡เตผเดŸเตเดŸเตเด•เตพ เด‡เดทเตเดŸเดชเตเดชเต†เดŸเตเดจเตเดจเต.

เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, เด—เตเดฐเดพเดซเตเด•เตพ เดจเต‹เด•เตเด•เตเด•เดฏเตเด‚ เด…เดชเดพเด•เดคเด•เตพ เด…เดจเตเดตเต‡เดทเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเต‡เด•เตเด•เดพเตพ เดŽเดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดธเด‚เดญเดตเดฟเด•เตเด•เตเดฎเตเดชเต‹เตพ (เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดถเดฐเดฟเดฏเดพเด•เตเด•เดฟเดฏเดคเต) เด…เดฑเดฟเดฏเดฟเด•เตเด•เตเดจเตเดจเดคเดพเดฃเต เดจเดฒเตเดฒเดคเต.

เด•เต‚เดŸเดพเดคเต† เด‡เดคเดฟเดจเดพเดฏเดฟ เดจเดฟเดฐเดตเดงเดฟ เด‰เดชเด•เดฐเดฃเด™เตเด™เตพ เดธเตƒเดทเตเดŸเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต. เดชเตเดฐเต‹เดฎเดฟเดคเตเดฏเต‚เดธเต เด‡เด•เตเด•เต‹เดธเดฟเดธเตเดฑเตเดฑเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เด…เดฒเตผเดŸเตเดŸเตเดฎเดพเดจเต‡เดœเดฑเตเด‚ เดตเดฟเด•เตเดŸเต‹เดฑเดฟเดฏเดฎเต†เดŸเตเดฐเดฟเด•เตเดธเต เด‰เตฝเดชเตเดชเดจเตเดจ เด—เตเดฐเต‚เดชเตเดชเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ vmalert. เด—เตเดฐเดพเดซเดพเดจเดฏเดฟเดฒเต† Zabbix เด…เดฑเดฟเดฏเดฟเดชเตเดชเตเด•เดณเตเด‚ เด…เดฒเต‡เตผเดŸเตเดŸเตเด•เดณเตเด‚. เดฌเดพเดทเต, เดŸเต†เดฒเดฟเด—เตเดฐเดพเด‚ เดฌเต‹เดŸเตเดŸเตเด•เตพ เดŽเดจเตเดจเดฟเดตเดฏเดฟเตฝ เดธเตเดตเดฏเด‚ เดŽเดดเตเดคเดฟเดฏ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เตพ เด‡เดŸเดฏเตเด•เตเด•เดฟเดŸเต† เดšเดฟเดฒ URL เดŽเดŸเตเดคเตเดคเต เดŽเดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เด•เตเดดเดชเตเดชเดฎเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เดณเต‹เดŸเต เดชเดฑเดฏเตเด‚. เดŽเดฒเตเดฒเดพเด‚ เด’เดฐเตเดชเดพเดŸเต.

เดžเด™เตเด™เตพ, เดžเด™เตเด™เดณเตเดŸเต† เด•เดฎเตเดชเดจเดฟเดฏเดฟเตฝ, เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฏ, เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ, เดธเด™เตเด•เต€เตผเดฃเตเดฃเดตเตเด‚ เดธเด‚เดฏเต‹เดœเดฟเดคเดตเตเดฎเดพเดฏ เด…เดฒเต‡เตผเดŸเตเดŸเตเด•เตพ เดธเตƒเดทเตเดŸเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเตเดณเตเดณ เด…เดธเดพเดงเตเดฏเดคเดฏเดฟเดฒเต‡เด•เตเด•เต เด•เดŸเด•เตเด•เตเดจเตเดจเดคเตเดตเดฐเต† เดžเด™เตเด™เตพ เดตเตเดฏเดคเตเดฏเดธเตเดค เดชเดฐเดฟเดนเดพเดฐเด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต. เดžเด™เตเด™เตพ เด†เด—เตเดฐเดนเดฟเดšเตเดšเดคเตเด‚ เดžเด™เตเด™เตพ เด…เดตเดธเดพเดจเดฟเดชเตเดชเดฟเดšเตเดšเดคเตเด‚ เดตเต†เดŸเตเดŸเดฟเด•เตเด•เตเดฑเดšเตเดšเดคเดฟเดจเต เดคเดพเดดเต†เดฏเดพเดฃเต. TLDR: เด“เดชเตเดชเตบ เดธเต‹เดดเตเดธเต เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเต เดชเตเดฐเดคเตเดฏเด•เตเดทเดชเตเดชเต†เดŸเตเดŸเดคเต เด‡เด™เตเด™เดจเต†เดฏเดพเดฃเต เดฌเดฒเต‡เตผเดŸเตเดŸเตผ

เด—เตเดฐเดพเดซเดพเดจเดฏเดฟเตฝ เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตโ€Œเดค เด…เดฒเต‡เตผเดŸเตเดŸเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดžเด™เตเด™เตพ เดตเดณเดฐเต†เด•เตเด•เดพเดฒเด‚ เดจเดจเตเดจเดพเดฏเดฟ เดœเต€เดตเดฟเดšเตเดšเต. เด…เดคเต†, เด‡เดคเต เดฎเดฟเด•เดšเตเดš เดฎเดพเตผเด—เดฎเดฒเตเดฒ. Alertmanager เดชเต‹เดฒเต†เดฏเตเดณเตเดณ เดšเดฟเดฒ เดชเตเดฐเดคเตเดฏเต‡เด• เดชเดฐเดฟเดนเดพเดฐเด™เตเด™เตพ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เดพเตป เดŽเดชเตเดชเต‹เดดเตเด‚ เดถเตเดชเดพเตผเดถ เดšเต†เดฏเตเดฏเดชเตเดชเต†เดŸเตเดจเตเดจเต. เดžเด™เตเด™เตพ เด’เดจเตเดจเดฟเดฒเดงเดฟเด•เด‚ เดคเดตเดฃ เดจเต€เด™เตเด™เดพเตป เดจเต‹เด•เตเด•เดฟ. เดชเดฟเดจเตเดจเต†, เด•เตเดฐเดฎเต‡เดฃ, เดžเด™เตเด™เตพ เด•เต‚เดŸเตเดคเตฝ เด†เด—เตเดฐเดนเดฟเดšเตเดšเต.

M เดฎเดฃเดฟเด•เตเด•เต‚เดฑเดฟเดจเตเดฑเต† เดฎเตเตป เด•เดพเดฒเดฏเดณเดตเดฟเดจเต† เด…เดชเต‡เด•เตเดทเดฟเดšเตเดšเต เด’เดฐเต เดจเดฟเดถเตเดšเดฟเดค เดšเดพเตผเดŸเตเดŸเต XX% เด•เตเดฑเดžเตเดžเต/เดตเตผเดฆเตเดงเดฟเด•เตเด•เตเด•เดฏเตเด‚ N เดฎเดฟเดจเดฟเดฑเตเดฑเตเด•เตพ เด…เดตเดฟเดŸเต† เดŽเดชเตเดชเต‹เดดเดพเดฃเต†เดจเตเดจเต เดชเดฑเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเดฃเต‹? เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‡เดคเต เด—เตเดฐเดพเดซเดพเดจ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด…เดฒเตผเดŸเตเดŸเตเดฎเดพเดจเต‡เดœเตผ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดจเดŸเดชเตเดชเดฟเดฒเดพเด•เตเด•เดพเตป เดถเตเดฐเดฎเดฟเด•เตเด•เดพเดฎเต†เดจเตเดจเต เดคเต‹เดจเตเดจเตเดจเตเดจเต, เดชเด•เตเดทเต‡ เด‡เดคเต เด…เดคเตเดฐ เดŽเดณเตเดชเตเดชเดฎเดฒเตเดฒ. (เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด…เดคเต เดธเดพเดงเตเดฏเดฎเดฒเตเดฒเดพเดฏเดฟเดฐเดฟเด•เตเด•เดพเด‚, เดžเดพเตป เด‡เดชเตเดชเต‹เตพ เดชเดฑเดฏเดฟเดฒเตเดฒ)

เดตเตเดฏเดคเตเดฏเดธเตโ€Œเดค เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดกเดพเดฑเตเดฑเดฏเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เดœเดพเด—เตเดฐเดคเดพ เดคเต€เดฐเตเดฎเดพเดจเด‚ เดŽเดŸเตเด•เตเด•เตเดฎเตเดชเต‹เตพ เด•เดพเดฐเตเดฏเด™เตเด™เตพ เด•เต‚เดŸเตเดคเตฝ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเด•เตเด‚. เดคเดคเตเดธเดฎเดฏ เด‰เดฆเดพเดนเดฐเดฃเด‚:

เดžเด™เตเด™เตพ เดฐเดฃเตเดŸเต เด•เตเดฒเดฟเด•เตเด•เตเดนเต—เดธเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดกเดพเดฑเตเดฑ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเด•, เดคเตเดŸเตผเดจเตเดจเต Postgres-เตฝ เดจเดฟเดจเตเดจเตเดณเตเดณ เดšเดฟเดฒ เดกเดพเดฑเตเดฑเดฏเตเดฎเดพเดฏเดฟ เดคเดพเดฐเดคเดฎเตเดฏเด‚ เดšเต†เดฏเตเดคเต เด’เดฐเต เด…เดฒเต‡เตผเดŸเตเดŸเต เดคเต€เดฐเตเดฎเดพเดจเดฟเด•เตเด•เตเด•. เดธเดฟเด—เตเดจเตฝ เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดฑเดฆเตเดฆเดพเด•เตเด•เตเด•

เดžเด™เตเด™เดณเตเดŸเต† เดคเต€เดฐเตเดฎเดพเดจเดคเตเดคเต†เด•เตเด•เตเดฑเดฟเดšเตเดšเต เดšเดฟเดจเตเดคเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดธเดฎเดพเดจเดฎเดพเดฏ เด’เดฐเตเดชเดพเดŸเต เด†เด—เตเดฐเดนเด™เตเด™เตพ เดžเด™เตเด™เตพ เดถเต‡เด–เดฐเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต. เดˆ เดธเต‡เดตเดจเดคเตเดคเดฟเดจเตเดฑเต† เด†เดตเดถเตเดฏเด•เดคเด•เตพ/เด•เดดเดฟเดตเตเด•เตพ เดŽเดจเตเดจเดฟเดตเดฏเตเดŸเต† เด†เดฆเตเดฏ เดฒเดฟเดธเตเดฑเตเดฑเต เด•เด‚เดชเตˆเตฝ เดšเต†เดฏเตเดฏเดพเตป เดžเด™เตเด™เตพ เดถเตเดฐเดฎเดฟเดšเตเดšเต, เด…เดคเต เด‡เดคเตเดตเดฐเต† เดธเตƒเดทเตเดŸเดฟเด•เตเด•เดชเตเดชเต†เดŸเตเดŸเดฟเดŸเตเดŸเดฟเดฒเตเดฒ.

  • เดตเตเดฏเดคเตเดฏเดธเตเดค เดกเดพเดฑเตเดฑ เด‰เดฑเดตเดฟเดŸเด™เตเด™เตพ เด†เด•เตเดธเดธเต เดšเต†เดฏเตเดฏเตเด•. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, Prometheus, Clickhouse, Postgres

  • เดตเดฟเดตเดฟเดง เดšเดพเดจเดฒเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต เด…เดฒเต‡เตผเดŸเตเดŸเตเด•เตพ เด…เดฏเดฏเตเด•เตเด•เตเด• - เดŸเต†เดฒเดฟเด—เตเดฐเดพเด‚, เดธเตเดฒเดพเด•เตเด•เต เดฎเตเดคเดฒเดพเดฏเดต.

  • เดšเดฟเดจเตเดคเดพ เดชเตเดฐเด•เตเดฐเดฟเดฏเดฏเดฟเตฝ, เดŽเดจเดฟเด•เตเด•เต เด’เดฐเต เดกเดฟเด•เตเดฒเดฑเต‡เดฑเตเดฑเต€เดตเต เดตเดฟเดตเดฐเดฃเดฎเดฒเตเดฒ เดตเต‡เดฃเตเดŸเดคเต, เดฎเดฑเดฟเดšเตเดšเต เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เตพ เดŽเดดเตเดคเดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเดพเดฃเต†เดจเตเดจเต เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟ.

  • เด’เดฐเต เดทเต†เดกเตเดฏเต‚เดณเดฟเตฝ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เตพ เดชเตเดฐเดตเตผเดคเตเดคเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต

  • เดธเต‡เดตเดจเด‚ เดชเตเดจเดฐเดพเดฐเด‚เดญเดฟเด•เตเด•เดพเดคเต† เดคเดจเตเดจเต† เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เดณเตเดŸเต† เดŽเดณเตเดชเตเดชเดคเตเดคเดฟเดฒเตเดณเตเดณ เด…เดชเตเดกเต‡เดฑเตเดฑเต

  • เดธเต‹เดดเตเดธเต เด•เต‹เดกเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดธเต‡เดตเดจเด‚ เดชเตเดจเตผเดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เดพเดคเต† เดŽเด™เตเด™เดจเต†เดฏเต†เด™เตเด•เดฟเดฒเตเด‚ เดชเตเดฐเดตเตผเดคเตเดคเดจเด‚ เดตเดฟเดชเตเดฒเต€เด•เดฐเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต

เดˆ เดฒเดฟเดธเตเดฑเตเดฑเต เดเด•เดฆเต‡เดถเดฎเดพเดฃเต, เดฎเดฟเด•เตเด•เดตเดพเดฑเตเด‚ เด•เตƒเดคเตเดฏเดฎเดฒเตเดฒ. เดšเดฟเดฒ เดชเต‹เดฏเดฟเดจเตเดฑเตเด•เตพ เดฎเดพเดฑเดฟ, เดšเดฟเดฒเดคเต เดฎเดฐเดฟเดšเตเดšเต. เดŽเดฒเตเดฒเดพเด‚ เดชเดคเดฟเดตเตเดชเต‹เดฒเต†.

เดฏเดฅเดพเตผเดคเตเดฅเดคเตเดคเดฟเตฝ, เดฌเดพเดฒเต†เตผเดŸเตเดŸเดฑเดฟเดจเตเดฑเต† เดšเดฐเดฟเดคเตเดฐเด‚ เด†เดฐเด‚เดญเดฟเดšเตเดšเดคเต เด‡เด™เตเด™เดจเต†เดฏเดพเดฃเต.

เดธเด™เตเด•เต€เตผเดฃเตเดฃเดฎเดพเดฏ เด…เดฒเต‡เตผเดŸเตเดŸเตเด•เตพ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดŽเดณเตเดชเตเดชเดฎเตเดณเตเดณ เดœเต‹เดฒเดฟ. เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดฌเดฒเต‡เตผเดŸเตเดŸเดฑเดฟเดจเตเดฑเต† เดธเตƒเดทเตเดŸเดฟเดฏเตเดŸเต† เดšเดฐเดฟเดคเตเดฐเด‚

เด…เดตเดธเดพเดจเด‚ เดŽเดจเตเดคเดพเดฃเต เดธเด‚เดญเดตเดฟเดšเตเดšเดคเต†เดจเตเดจเตเด‚ เด…เดคเต เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเตเดตเต†เดจเตเดจเตเด‚ เดžเดพเตป เดนเตเดฐเดธเตเดตเดฎเดพเดฏเดฟ เดตเดฟเดตเดฐเดฟเด•เตเด•เดพเตป เดถเตเดฐเดฎเดฟเด•เตเด•เตเด‚. (เด…เดคเต†, เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, เด‡เดคเต เด…เดตเดธเดพเดจเดฎเดฒเตเดฒ. เด‰เตฝเดชเตเดชเดจเตเดจ เดตเดฟเด•เดธเดจเดคเตเดคเดฟเดจเต เดจเดฟเดฐเดตเดงเดฟ เดชเดฆเตเดงเดคเดฟเด•เดณเตเดฃเตเดŸเต. เดžเดพเตป เด‡เดจเตเดจเต เดจเดฟเตผเดคเตเดคเตเดจเตเดจเต)

เด‡เดคเต เดŽเด™เตเด™เดจเต† เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เตเดจเตเดจเต?

เดจเดฟเด™เตเด™เตพ เดฒเตเดตเดฏเดฟเตฝ เด’เดฐเต เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดŽเดดเตเดคเตเดจเตเดจเต, เด…เดตเดฟเดŸเต† เดจเดฟเด™เตเด™เตพ เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ เด…เดฏเดฏเตโ€Œเด•เตเด•เตเดจเตเดจเต (เดชเตเดฐเต‹เดฎเดฟเดคเตเดฏเต‚เดธเต, เด•เตเดฒเดฟเด•เตเด•เตเดนเต—เดธเต เดฎเตเดคเดฒเดพเดฏเดต). เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด‰เดคเตเดคเดฐเด™เตเด™เตพ เดฒเดญเดฟเด•เตเด•เตเด•เดฏเตเด‚ เด…เดต เดŽเด™เตเด™เดจเต†เดฏเต†เด™เตเด•เดฟเดฒเตเด‚ เดชเตเดฐเต‹เดธเดธเตเดธเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดคเดพเดฐเดคเดฎเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดคเตเดŸเตผเดจเตเดจเต เดเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดคเดฐเดคเตเดคเดฟเดฒเตเดณเตเดณ เด…เดฒเต‡เตผเดŸเตเดŸเต เด“เตบ/เด“เดซเต เดšเต†เดฏเตเดฏเตเด•. เดจเดฟเด™เตเด™เตพ เด•เต‹เตบเดซเดฟเด—เตผ เดšเต†เดฏเตโ€Œเดค เดšเดพเดจเดฒเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต (เด‡เดฎเต†เดฏเดฟเตฝ, เดŸเต†เดฒเดฟเด—เตเดฐเดพเด‚, เดธเตเดฒเดพเด•เตเด•เต เดฎเตเดคเดฒเดพเดฏเดต) เดฌเดพเดฒเต†เตผเดŸเตเดŸเตผ เดคเดจเตเดจเต† เด’เดฐเต เด…เดฑเดฟเดฏเดฟเดชเตเดชเต เด…เดฏเดฏเตเด•เตเด•เตเด‚. เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดจเดฟเดถเตเดšเดฟเดค เด‡เดŸเดตเต‡เดณเด•เดณเดฟเตฝ เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดจเตเดจเต. เดชเดฟเดจเตเดจเต†... เดชเตŠเดคเตเดตเต‡, เด…เดคเตเดฐเดฎเดพเดคเตเดฐเด‚)

เด’เดฐเต เด‰เดฆเดพเดนเดฐเดฃเด‚ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด•เดพเดฃเดฟเด•เตเด•เตเดจเตเดจเดคเดพเดฃเต เดจเดฒเตเดฒเดคเต:

-- @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 

เดŽเดจเตเดคเดพเดฃเต เด‡เดตเดฟเดŸเต† เดจเดŸเด•เตเด•เตเดจเตเดจเดคเต:

  • เด“เดฐเต‹ 10 เดธเต†เด•เตเด•เตปเดกเดฟเดฒเตเด‚ เดˆ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเต เดŽเด•เตเดธเดฟเด•เตเดฏเต‚เดŸเตเดŸเต เดšเต†เดฏเตเดฏเดฃเดฎเต†เดจเตเดจเต เดžเด™เตเด™เตพ เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเต

  • เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเดฟเดจเตเดฑเต† เดชเต‡เดฐเต เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เตเด• (API-เดฏเตโ€Œเด•เตเด•เต, เดฒเต‹เด—เตเด•เดณเดฟเตฝ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต, เดŸเต†เดธเตเดฑเตเดฑเตเด•เดณเดฟเตฝ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต)

  • เดฒเต‹เด—เตเด•เตพ เด”เดŸเตเดŸเตเดชเตเดŸเตเดŸเต เดšเต†เดฏเตเดฏเตเดจเตเดจเดคเดฟเดจเดพเดฏเดฟ เดฎเตŠเดกเตเดฏเต‚เตพ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเด•

  • เดชเต‡เดฐเต เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เด•เตเดฒเดฟเด•เตเด•เตเดนเต—เดธเต เด†เด•เตเดธเดธเต เดšเต†เดฏเตเดฏเดพเตป เด’เดฐเต เดฎเตŠเดกเตเดฏเต‚เตพ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเด• ch1 (เด•เดฃเด•เตเดทเตป เดคเดจเตเดจเต† เด•เต‹เตบเดซเดฟเด—เดฑเดฟเตฝ เด•เตเดฐเดฎเต€เด•เดฐเดฟเดšเตเดšเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต)

  • เด•เตเดฒเดฟเด•เตเด•เตเดนเต—เดธเดฟเดฒเต‡เด•เตเด•เต เด’เดฐเต เด…เดญเตเดฏเตผเดคเตเดฅเดจ เด…เดฏเดฏเตเด•เตเด•เตเด•

  • เด’เดฐเต เดชเดฟเดถเด•เต เดธเด‚เดญเดตเดฟเดšเตเดšเดพเตฝ, เดžเด™เตเด™เตพ เดฒเต‹เด—เดฟเตฝ เด’เดฐเต เดธเดจเตเดฆเต‡เดถเด‚ เดชเตเดฐเดฆเตผเดถเดฟเดชเตเดชเดฟเด•เตเด•เตเด•เดฏเตเด‚ เดชเตเดฑเดคเตเดคเตเด•เดŸเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต

  • เด…เดจเตเดตเต‡เดทเดฃ เดซเดฒเด‚ เด’เดฐเต เดธเตเดฅเดฟเดฐเดพเด™เตเด•เดตเตเดฎเดพเดฏเดฟ เดคเดพเดฐเดคเดฎเตเดฏเด‚ เดšเต†เดฏเตเดฏเตเด• (เด’เดฐเต เดคเดคเตเดธเดฎเดฏ เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ, เดจเดฎเตเด•เตเด•เต เดˆ เดฎเต‚เดฒเตเดฏเด‚ เดฒเดญเดฟเด•เตเด•เตเด‚, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, Postgres เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตฝ เดจเดฟเดจเตเดจเต)

  • เดเดกเดฟ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดฎเตเดจเตเดจเดฑเดฟเดฏเดฟเดชเตเดชเต เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดพเด•เตเด•เตเด• เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดจเดฐเดนเดฟเดคเดฎเดพเด•เตเด•เตเด• rps-min-limit

  • เด…เดฒเต‡เตผเดŸเตเดŸเต เดจเดฟเดฒ เดฎเดพเดฑเดฟเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต†เด™เตเด•เดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เด’เดฐเต เด…เดฑเดฟเดฏเดฟเดชเตเดชเต เดฒเดญเดฟเด•เตเด•เตเด‚

เด‰เดฆเดพเดนเดฐเดฃเด‚ เดตเดณเดฐเต† เดฒเดณเดฟเดคเดตเตเด‚ เดฎเดจเดธเตเดธเดฟเดฒเดพเด•เตเด•เดพเดตเตเดจเตเดจเดคเตเดฎเดพเดฃเต. เดŽเดจเตเดจเดฟเดฐเตเดจเตเดจเดพเดฒเตเด‚, เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚, เดฏเดฅเดพเตผเดคเตเดฅ เดœเต€เดตเดฟเดคเดคเตเดคเดฟเตฝ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เตพ เดตเดณเดฐเต† เดฆเตˆเตผเด˜เตเดฏเดฎเต‡เดฑเดฟเดฏเดคเตเด‚ เดธเด™เตเด•เต€เตผเดฃเตเดฃเดตเตเดฎเดพเดฃเต. เด†เดถเดฏเด•เตเด•เตเดดเดชเตเดชเดคเตเดคเดฟเดฒเดพเด•เดพเดจเตเด‚ เดคเต†เดฑเตเดฑเตเด•เตพ เดตเดฐเตเดคเตเดคเดพเดจเตเด‚ เดŽเดณเตเดชเตเดชเดฎเดพเดฃเต.

เด…เดคเดฟเดจเดพเตฝ, เด’เดฐเต เดฒเต‹เดœเดฟเด•เตเด•เตฝ เด†เด—เตเดฐเดนเด‚ เดชเด•เตเดตเดค เดชเตเดฐเดพเดชเดฟเดšเตเดšเต - เดจเดฟเด™เตเด™เดณเตเดŸเต† เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เตพเด•เตเด•เต เดŸเต†เดธเตเดฑเตเดฑเตเด•เตพ เดŽเดดเตเดคเดพเตป เด•เดดเดฟเดฏเตเด‚. เด•เต‚เดŸเดพเดคเต† v0.4.0 เดชเดคเดฟเดชเตเดชเดฟเตฝ เด‡เดคเต เดชเตเดฐเดคเตเดฏเด•เตเดทเดชเตเดชเต†เดŸเตเดŸเต.

เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เตพ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเต

เดฎเตเด•เดณเดฟเดฒเต† เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดžเด™เตเด™เดณเตเดŸเต† เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเดฟเดจเตเดณเตเดณ เด‰เดฆเดพเดนเดฐเดฃ เดชเดฐเดฟเดถเต‹เดงเดจ:

-- @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')

เด˜เดŸเตเดŸเด™เตเด™เตพ:

  • เดชเดฐเต€เด•เตเดท เดŽเดดเตเดคเดฟเดฏ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเดฟเดจเตเดฑเต† เดชเต‡เดฐเต เดธเต‚เดšเดฟเดชเตเดชเดฟเด•เตเด•เตเด•

  • เดชเดฐเดฟเดถเต‹เดงเดจเดฏเตเดŸเต† เดชเต‡เดฐเต (เดฒเต‹เด—เตเด•เตพเด•เตเด•เต)

  • เดŸเต†เดธเตเดฑเตเดฑเดฟเด‚เด—เต เดฎเตŠเดกเตเดฏเต‚เตพ เดฌเดจเตเดงเดฟเดชเตเดชเดฟเด•เตเด•เตเด•

  • เด•เตเดฒเดฟเด•เตเด•เตเดนเต—เดธเดฟเดฒเต‡เด•เตเด•เตเดณเตเดณ เด’เดฐเต เดจเดฟเตผเดฆเตเดฆเดฟเดทเตเดŸ เด…เดญเตเดฏเตผเดคเตเดฅเดจเดฏเตเด•เตเด•เต เดŽเดจเตเดคเต เดซเดฒเด‚ เดจเตฝเด•เดฃเดฎเต†เดจเตเดจเต เดžเด™เตเด™เตพ เดชเดฑเดฏเตเดจเตเดจเต ch1

  • เดจเดฟเตผเดฆเตเดฆเดฟเดทเตโ€ŒเดŸ เดธเดจเตเดฆเต‡เดถเดคเตเดคเต‹เดŸเตเด•เต‚เดŸเดฟเดฏ เด…เดฒเต‡เตผเดŸเตเดŸเต (เดชเดฟเดถเด•เต) rps-min-limit เดตเดฟเดณเดฟเดšเตเดšเดฟเดŸเตเดŸเตเดฃเตเดŸเต‹เดฏเต†เดจเตเดจเต เดžเด™เตเด™เตพ เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเดจเตเดจเต

  • rps-min-limit เด…เดฒเต‡เตผเดŸเตเดŸเต เด…เดชเตเดฐเดพเดชเตเดคเดฎเดพเด•เตเด•เดฟเดฏเดฟเดŸเตเดŸเดฟเดฒเตเดฒเต†เดจเตเดจเต เดชเดฐเดฟเดถเต‹เดงเดฟเด•เตเด•เตเด• (เดตเดฟเดœเดฏเด‚)

Balerter เดฎเดฑเตเดฑเต†เดจเตเดคเดพเดฃเต เดšเต†เดฏเตเดฏเดพเตป เด•เดดเดฟเดฏเตเด•?

เดžเดพเตป เดเดฑเตเดฑเดตเตเด‚ เดชเตเดฐเดงเดพเดจเดชเตเดชเต†เดŸเตเดŸ, เดŽเดจเตเดฑเต† เด…เดญเดฟเดชเตเดฐเดพเดฏเดคเตเดคเดฟเตฝ, เดฌเดฒเต‡เตผเดŸเตเดŸเตผ เด•เดดเดฟเดตเตเด•เดณเต† เดธเตเดชเตผเดถเดฟเด•เตเด•เดพเตป เดถเตเดฐเดฎเดฟเด•เตเด•เตเด‚. เด”เดฆเตเดฏเต‹เด—เดฟเด• เดตเต†เดฌเตเดธเตˆเดฑเตเดฑเดฟเตฝ เดจเดฟเด™เตเด™เตพเด•เตเด•เต เดŽเดฒเตเดฒเดพเด‚ เดตเดฟเดถเดฆเดฎเดพเดฏเดฟ เด•เดพเดฃเดพเตป เด•เดดเดฟเดฏเตเด‚ https://balerter.com

  • เดŽเดจเตเดจเดคเดฟเตฝ เดจเดฟเดจเตเดจเต เดกเดพเดฑเตเดฑ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•

    • เด•เตเดฒเดฟเด•เตเด•เตเดนเต—เดธเต

    • เดชเต‹เดธเตเดฑเตเดฑเตเด—เตเดฐเต†เดธเต

    • เด•เตเดฏเต

    • เดชเตเดฐเต‹เดฎเดฟเดคเตเดฏเต‚เดธเต

    • เดฒเต‹เด•เตเด•เดฟ

  • เดšเดพเดจเดฒเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต เด…เดฑเดฟเดฏเดฟเดชเตเดชเตเด•เตพ เด…เดฏเดฏเตเด•เตเด•เตเด•

    • เดธเตเดฒเดพเด•เตเด•เต

    • เดŸเต†เดฒเด—เตเดฐเดพเด‚

    • เดธเดฟเดธเตโ€Œเดฒเต‹เด—เต

    • เด…เดฑเดฟเดฏเดฟเด•เตเด•เตเด• (เดจเดฟเด™เตเด™เดณเตเดŸเต† เด•เดฎเตเดชเตเดฏเต‚เดŸเตเดŸเดฑเดฟเดฒเต† เดฏเตเด เด…เดฑเดฟเดฏเดฟเดชเตเดชเตเด•เตพ)

    • เด‡เดฎเต†เดฏเดฟเตฝ

    • เด•เตเดดเดชเตเดชเด‚

  • เดจเดฟเด™เตเด™เดณเตเดŸเต† เดกเดพเดฑเตเดฑเดฏเต† เด…เดŸเดฟเดธเตเดฅเดพเดจเดฎเดพเด•เตเด•เดฟ เด—เตเดฐเดพเดซเตเด•เตพ เดจเดฟเตผเดฎเตเดฎเดฟเด•เตเด•เตเด•, เดšเดฟเดคเตเดฐเด‚ S3 เด…เดจเตเดฏเต‹เดœเตเดฏเดฎเดพเดฏ เดธเตเดฑเตเดฑเต‹เดฑเต‡เดœเดฟเดฒเต‡เด•เตเด•เต เด…เดชเตโ€Œเดฒเต‹เดกเต เดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เด…เดฑเดฟเดฏเดฟเดชเตเดชเตเด•เดณเดฟเดฒเต‡เด•เตเด•เต เด…เดฑเตเดฑเดพเดšเตเดšเตเดšเต†เดฏเตเดฏเตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด• (เดšเดฟเดคเตเดฐเด™เตเด™เดณเตเดณเตเดณ เด‰เดฆเดพเดนเดฐเดฃเด‚)

  • เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เตพเด•เตเด•เดฟเดŸเดฏเดฟเตฝ เดกเดพเดฑเตเดฑ เด•เตˆเดฎเดพเดฑเดพเตป เดจเดฟเด™เตเด™เดณเต† เด…เดจเตเดตเดฆเดฟเด•เตเด•เตเดจเตเดจเต - เด†เด—เต‹เดณ เด•เต€/เดฎเต‚เดฒเตเดฏเด‚ เดธเด‚เดญเดฐเดฃเด‚

  • เดจเดฟเด™เตเด™เดณเตเดŸเต† เดธเตเดตเดจเตเดคเด‚ เดฒเตˆเดฌเตเดฐเดฑเดฟเด•เตพ เดฒเตเดตเดฏเดฟเตฝ เดŽเดดเตเดคเตเด•เดฏเตเด‚ เด…เดต เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เดณเดฟเตฝ เด‰เดชเดฏเต‹เด—เดฟเด•เตเด•เตเด•เดฏเตเด‚ เดšเต†เดฏเตเดฏเตเด• (เดธเตเดตเดคเดตเต‡, json, csv เดŽเดจเตเดจเดฟเดตเดฏเดฟเตฝ เดชเตเดฐเดตเตผเดคเตเดคเดฟเด•เตเด•เดพเตป lua เดฒเตˆเดฌเตเดฐเดฑเดฟเด•เตพ เดตเดฟเดคเดฐเดฃเด‚ เดšเต†เดฏเตเดฏเตเดจเตเดจเต)

  • เดจเดฟเด™เตเด™เดณเตเดŸเต† เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต HTTP เด…เดญเตเดฏเตผเดคเตเดฅเดจเด•เตพ เด…เดฏเดฏเตเด•เตเด•เตเด• (เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚ เดชเตเดฐเดคเดฟเด•เดฐเดฃเด™เตเด™เตพ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เตเด•)

  • เด’เดฐเต API เดจเตฝเด•เตเดจเตเดจเต (เดžเด™เตเด™เตพ เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจ เดชเต‹เดฒเต† เด‡เดคเตเดตเดฐเต† เดชเตเดฐเดตเตผเดคเตเดคเดจเด•เตเดทเดฎเดฎเดฒเตเดฒ)

  • เดชเตเดฐเต‹เดฎเดฟเดคเตเดฏเต‚เดธเต เดซเต‹เตผเดฎเดพเดฑเตเดฑเดฟเตฝ เด…เดณเดตเตเด•เตพ เด•เดฏเดฑเตเดฑเตเดฎเดคเดฟ เดšเต†เดฏเตเดฏเตเดจเตเดจเต

เดฎเดฑเตเดฑเต†เดจเตเดคเดพเดฃเต เดšเต†เดฏเตเดฏเดพเตป เดจเดฟเด™เตเด™เตพ เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเดคเต?

เดตเดพเด•เตเดฏเด˜เดŸเดจ เด‰เดชเดฏเต‹เด—เดฟเดšเตเดšเต เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เดณเตเดŸเต† เดธเดฎเดพเดฐเด‚เดญเด‚ เดจเดฟเดฏเดจเตเดคเตเดฐเดฟเด•เตเด•เดพเดจเตเดณเตเดณ เด•เดดเดฟเดตเต เด‰เดชเดฏเต‹เด•เตเดคเดพเด•เตเด•เตพเด•เตเด•เตเด‚ เดžเด™เตเด™เตพเด•เตเด•เตเด‚ เด†เดตเดถเตเดฏเดฎเดพเดฃเต†เดจเตเดจเต เด‡เดคเดฟเดจเด•เด‚ เดตเตเดฏเด•เตเดคเดฎเดพเดฏเดฟเดŸเตเดŸเตเดฃเตเดŸเต เด•เตเดฐเต‡เดพเตบ. เดชเดคเดฟเดชเตเดชเต v1.0.0-เดจเต เดฎเตเดฎเตเดชเต เด‡เดคเต เดšเต†เดฏเตเดฏเดชเตเดชเต†เดŸเตเด‚

เด•เต‚เดŸเตเดคเตฝ เดกเดพเดฑเตเดฑ เด‰เดฑเดตเดฟเดŸเด™เตเด™เดณเต†เดฏเตเด‚ เด…เดฑเดฟเดฏเดฟเดชเตเดชเต เดกเต†เดฒเดฟเดตเดฑเดฟ เดšเดพเดจเดฒเตเด•เดณเต†เดฏเตเด‚ เดชเดฟเดจเตเดคเตเดฃเดฏเตเด•เตเด•เดพเตป เดžเดพเตป เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต. เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด†เดฐเต†เด™เตเด•เดฟเดฒเตเด‚ เดคเต€เตผเดšเตเดšเดฏเดพเดฏเตเด‚ MongoDB เดจเดทเตโ€ŒเดŸเดชเตเดชเต†เดŸเตเด‚. เดšเดฟเดฒเตผเด•เตเด•เต เด‡เดฒเดพเดธเตเดฑเตเดฑเดฟเด•เต เดคเดฟเดฐเดฏเตฝ. เดจเดฟเด™เตเด™เดณเตเดŸเต† เดฎเตŠเดฌเตˆเตฝ เดซเต‹เดฃเดฟเดฒเต‡เด•เตเด•เต SMS เด…เดฏเดฏเตโ€Œเด•เตเด•เตเด• เด•เต‚เดŸเดพเดคเต†/เด…เดฒเตเดฒเต†เด™เตเด•เดฟเตฝ เด•เต‹เดณเตเด•เตพ เดšเต†เดฏเตเดฏเตเด•. เดซเดฏเดฒเตเด•เดณเดฟเตฝ เดจเดฟเดจเตเดจเต เดฎเดพเดคเตเดฐเดฎเดฒเตเดฒ, เด‰เดฆเดพเดนเดฐเดฃเดคเตเดคเดฟเดจเต, เด’เดฐเต เดกเดพเดฑเตเดฑเดพเดฌเต‡เดธเดฟเตฝ เดจเดฟเดจเตเดจเตเด‚ เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เตพ เดธเตเดตเต€เด•เดฐเดฟเด•เตเด•เดพเตป เดžเด™เตเด™เตพ เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต. เด…เดตเดธเดพเดจเด‚, เดชเตเดฐเต‹เดœเด•เตเดฑเตเดฑเดฟเดจเดพเดฏเดฟ เด•เต‚เดŸเตเดคเตฝ เด‰เดชเดฏเต‹เด•เตเดคเตƒ-เดธเต—เดนเตƒเดฆ เดตเต†เดฌเตโ€Œเดธเตˆเดฑเตเดฑเตเด‚ เดฎเดฟเด•เดšเตเดš เดกเต‹เด•เตเดฏเตเดฎเต†เดจเตเดฑเต‡เดทเดจเตเด‚ เดžเด™เตเด™เตพ เด†เด—เตเดฐเดนเดฟเด•เตเด•เตเดจเตเดจเต.

เด†เตผเด•เตเด•เต†เด™เตเด•เดฟเดฒเตเด‚ เดŽเดชเตเดชเต‹เดดเตเด‚ เดŽเดจเตเดคเต†เด™เตเด•เดฟเดฒเตเด‚ เดจเดทเตโ€ŒเดŸเดฎเดพเดฏเดฟเดฐเดฟเด•เตเด•เตเดจเตเดจเต) เด‡เดตเดฟเดŸเต† เดฎเตเตปเด—เดฃเดจเด•เตพ เดถเดฐเดฟเดฏเดพเดฏเดฟ เดธเดœเตเดœเต€เด•เดฐเดฟเด•เตเด•เตเดจเตเดจเดคเดฟเดจเต เดžเด™เตเด™เตพ เด•เดฎเตเดฎเตเดฏเต‚เดฃเดฟเดฑเตเดฑเดฟเดฏเตเดŸเต† เด…เดญเตเดฏเตผเดคเตเดฅเดจเดฏเต† เด†เดถเตเดฐเดฏเดฟเด•เตเด•เตเดจเตเดจเต. เด’เดชเตเดชเด‚ เดŽเดฒเตเดฒเดพเด‚ เดคเดฟเดฐเดฟเดšเตเดšเดฑเดฟเดฏเดพเตป เดธเดฎเต‚เดนเดคเตเดคเดฟเดจเตเดฑเต† เดธเดนเดพเดฏเดตเตเด‚

เด‰เดชเดธเด‚เดนเดพเดฐเดฎเดพเดฏเดฟ

เดžเด™เตเด™เตพ เด‰เดชเดฏเต‡เดพเด—เดฟเด•เตเด•เตเดจเตเดจเต เดฌเดฒเต‡เตผเดŸเตเดŸเตผ เด‡เดชเตเดชเต‹เตพ เด•เตเดฑเต† เด•เดพเดฒเดฎเดพเดฏเดฟ เดŽเดจเดฟเด•เตเด•เดคเต เด‰เดฃเตเดŸเต. เดกเดธเตป เด•เดฃเด•เตเด•เดฟเดจเต เดธเตเด•เตเดฐเดฟเดชเตเดฑเตเดฑเตเด•เตพ เดจเดฎเตเดฎเตเดŸเต† เดฎเดจเดธเตเดธเดฎเดพเดงเดพเดจเด‚ เด•เดพเด•เตเด•เตเดจเตเดจเต. เดˆ เด•เตƒเดคเดฟ เดฎเดฑเตเดฑเตŠเดฐเดพเตพเด•เตเด•เต เด‰เดชเดฏเต‹เด—เดชเตเดฐเดฆเดฎเดพเด•เตเดฎเต†เดจเตเดจเต เดžเดพเตป เดชเตเดฐเดคเต€เด•เตเดทเดฟเด•เตเด•เตเดจเตเดจเต.

เดจเดฟเด™เตเด™เดณเตเดŸเต† เด‡เดทเตเดฏเต‚เดตเตเด‚ เดชเดฟเด†เดฑเตเด‚ เดธเดนเดฟเดคเด‚ เดธเตเดตเดพเด—เดคเด‚.

เด…เดตเดฒเด‚เดฌเด‚: www.habr.com

เด’เดฐเต เด…เดญเดฟเดชเตเดฐเดพเดฏเด‚ เดšเต‡เตผเด•เตเด•เตเด•