Zabbix á¡ááœá²á·ááẠZabbix 4.4 áááœááºááŸáááŸá¯ááá¯ááŒá±ááŒá¬áááºáááºážááŒá±á¬ááºáááá«áááºá áá±á¬ááºáá¯á¶ážááœááºáá¬ážááŸááºážááœáẠGo ááœááºáá±ážáá¬ážáá±á¬ Zabbix á¡á±ážáá»áá·áºá¡áá áºáá áºáá¯áá«ááŸáááŒá®ážá Zabbix ááá°áá¬áá»á¬ážá¡ááœáẠá á¶ááŸá¯ááºážáá»á¬ážáááºááŸááºáᬠá¡ááá·áºááŒáá·áºááŒááºáá±á¬ááºááá¯ááºá áœááºážáá»á¬ážááᯠáá¶á·ááá¯ážáá±ážáá«áááºá
Zabbix 4.4 ááœááºáá«áááºáá±á¬ á¡áá±ážááŒá®ážáá¯á¶ážá¡ááºá¹áá«áááºáá»á¬ážááᯠááŒáá·áºááŒáá«á
áá¯á·á
áá»áá¯ážáááºáá
ẠZabbix á¡á±ážáá»áá·áº
Zabbix 4.4 ááẠáá»ááºááŒáá·áºáá±á¬ á
áœááºážáááºá¡áá
áºáá»á¬ážááŸáá·áº ááŒáŸáá·áºáááºáá¬ážáá±á¬ á
á±á¬áá·áºááŒáá·áºáá±ážáá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠáá±ážáá±á¬ááºááá·áº á¡á±ážáá»áá·áºá¡áá»áá¯ážá¡á
á¬ážá¡áá
Ạzabbix_agent2 ááᯠááááºáááºáá±ážáááº-
- Go áá¬áá¬á áá¬ážááŒáá·áº áá±ážáá¬ážáá¬ážáááºá
- áááºáá±á¬ááºááŸá¯á¡áá»áá¯ážáá»áá¯ážááŸáá·áº á¡ááºááºáá®áá±ážááŸááºážáá»á¬ážááᯠá á±á¬áá·áºááŒáá·áºáááºá¡ááœáẠááááºá¡ááºáá±á¬ááºáá áºáá¯á
- á á áºáá±ážááŸá¯áá»á¬ážááŒá¬ážááœáẠá¡ááŒá±á¡áá±ááᯠááááºážááááºážáá¬ážááá¯ááºááŸá¯ (á¥ááá¬á áá±áá¬áá±á·á áºááá¯á· áááºááá¯ááºáá»áááºáááºááŸá¯áá»á¬ážááᯠááááºážááááºážááŒááºáž)á
- ááá¯ááºáá»á±á¬áá®ááœá±ááŸááá±á¬ á¡áá»áááºááœááºáá»á¬ážááᯠáá¶á·ááá¯ážááẠBuilt-in á¡áá»áááºááá¬ážá
- áá±áá¬á¡ááŒá±á¬ááºá¡ááŒá¬ážááœáŸá²ááŒá±á¬ááºážááŒááºážááŒáá·áº ááœááºáááºááᯠáááá±á¬ááºá áœá¬á¡áá¯á¶ážááŒá¯ááŒááºážá
- á¡á±ážáá»áá·áºááẠáááºááŸáááœáẠLinux áá±á«áºááœáẠáá¯ááºáá±á¬ááºáá±áá±á¬áºáááºáž áááŒá¬áá®áá¬áá¡ááœááºáž á¡ááŒá¬ážááááºáá±á¬ááºážáá»á¬ážá¡ááœáẠá¡áá¯á¶ážááŒá¯ááá¯ááºá¡á±á¬áẠááŒá¯áá¯ááºáá±ážáá«áááºá
â á¡ááºá¹áá«áááºá¡áá
áºáá»á¬ážá á
á¬áááºážá¡ááŒáá·áºá¡á
á¯á¶ááᯠááŒáá·áºááŸá¯áá«á
NB áááºááŸá Zabbix á¡á±ážáá»áá·áºááᯠáááºáááºáá¶á·ááá¯ážáá±ážáá«áááºá
â
Webhooks ááŸáá·áº programmable action/notification logic
ááŒááºáááááá±ážáá»ááºááŸáá·áº áááºááŸááºáá¯ááºáá±ážááá·áºá áá áºáá»á¬ážááŸáá·áº áá±á«ááºážá ááºážááŒááºážá¡á¬áž áááááá¬áᬠááŒáŸáá·áºáááºáá¬ážááŒá®ážá áááºážááẠbuilt-in JavaScript á¡ááºáá»ááºááᯠá¡áá¯á¶ážááŒá¯á áá¯ááºáá±á¬ááºááŒááºážááá¯ááºáᬠáá¯áá¹áááá±áá¡á¬ážáá¯á¶ážááᯠáááºááŸááºááá¯ááºá á±áá²á·áááºá á€áá¯ááºáá±á¬ááºáá»ááºááẠááŒááºáá áá áºáá»á¬ážááŸáá·áº ááŸá áºáááºážááœá¬ážáá±á«ááºážá ááºážááŸá¯ááᯠááá¯ážááŸááºážá á±ááŒá®áž Zabbix á¡áá¯á¶ážááŒá¯áá° á¡ááºáá¬áá±á·á áºá០ááá·áºáááºááŸááºá áá áºá¡ááœááºáž áááºááœáá·áºáá áºáá¯ááá¯á· áá áºáá»ááºááŸáááºáá¯á¶ááŒáá·áº áááºáá±á¬ááºááœáá·áºá áá»ááºáááºáá±á·áá»áºáá»á¬áž áááºáá®ážááŒááºážááŸáá·áº á¡ááŒá¬ážá¡áá¬áá»á¬ážá áœá¬ááᯠááœáá·áºááŒá¯áá±ážáá«áááºá
Zabbix áááºážáááááºáá»á¬ážá¡ááœáẠá á¶ááŸá¯ááºážáá»á¬áž áááºááŸááºááŒááºážá
áá»áœááºá¯ááºááá¯á·ááẠá
á¶ááŸá¯ááºážáá»á¬ážá
áœá¬ááᯠááááºáááºááŒá®áž ááŸááºážááŸááºážáááºážáááºážáááºááŸááºáá¬ážáá«áááºá
XML/JSON ááá¯ááºáá»á¬ážá ááœá²á·á ááºážáá¯á¶ááᯠáááá¬áááºááŸá¬ážá áœá¬ ááá¯ážááŸááºážá á±ááŒá®ážá ááá°áá¬áá»á¬ážááᯠá á¬áá¬ážáááºážááŒááºáá°ááá¯áᬠá¡áá¯á¶ážááŒá¯á ááá¯ááºááá¯ááºáááºážááŒááºááá¯ááºá á±áá«áááºá áááºááŸááá¯á¶á á¶áááááºá¡áá»á¬ážá á¯ááẠá á¶ááŸá¯ááºážá¡áá áºáá»á¬ážááŸáá·áº ááá¯ááºáá®á á±ááẠááŒáŸáá·áºáááºáá¬ážáá«áááºá
ááá¬ážááẠTimescaleDB áá¶á·ááá¯ážááŸá¯
MySQLá PostgreSQLá Oracle ááŸáá·áº DB2 á¡ááŒááºá áá»áœááºá¯ááºááá¯á·ááẠááá¯á¡áá« TimescaleDB ááᯠááá¬ážááẠáá¶á·ááá¯ážáá¬ážáá«áááºá TimescaleDB ááẠáá®ážáá®ážáá¬ážáá¬áž á
áœááºážáá±á¬ááºááẠá¡ááá·áºáá»á¬ážááᯠáá¶á·ááá¯ážáá±ážááá·áºá¡ááŒáẠáááá¯ááºážááá¯ááºáᬠá¡áá»ááºá¡áááºáá±á¬ááºážáá»á¬ážááᯠá¡ááá¯á¡áá»á±á¬áẠáá»ááºááŒááºáž áá»ááºáá
áºááŒááºážá
á¡ááŒá±á¬ááºážá¡áá¬áá»á¬ážááŸáá·áº á¡á áá»áá¯ážááŸá¯áá»á¬ážá¡áá±á«áº á¡ááááá¬á¡ááŒá±áá¶
Zabbix 4.4 ááẠá¡áá¬ááá¹áá¯áá»á¬ážááŸáá·áº á¡á
áá»áá¯ážááŸá¯áá»á¬ážá¡ááŒá±á¬ááºáž ááá¯ááá¯ááŸááºážáááºážá
áœá¬ áá±á¬áºááŒáá»ááºáá±ážáá«áááºá á
á¯áá±á¬ááºážáá¬ážáá±á¬áá
á¹á
ááºážáá»á¬ážáá¡áááá¹áá¬ááºááŸáá·áºáááºááœááºáá»ááºá ááŒá¿áá¬á¡áá±ážá
áááºááŸáá·áº áááºážááá¯ááŒá±ááŸááºážáááºážáááºážááœáŸááºáá»ááºáá»á¬ážá¡ááŒá±á¬ááºáž ááŒá
áºááá¯ááºááá»áŸá¡áá±ážá
áááºá¡áá»ááºá¡áááºáá»á¬ážááᯠáá¶á·ááá¯ážáá±ážááŒááºážááŒáá·áº á€á¡áá»ááºá¡áááºááẠá¡ááºáá»ááºáá®áá¬áá»á¬ážá¡ááœáẠáá»á¬ážá
áœá¬á¡áá±á¬ááºá¡áá°ááŒá
áºá
á±áá«áááºá
á¡ááá·áºááŒáá·áº ááŒááºáá±á¬ááºááŸá¯ ááœá±ážáá»ááºá áá¬áá»á¬áž
áááááá¬áá¬ážáá»á¬ážááŸáá·áº áááºážááá¯á·ááááºá
ááºáá
áºáá»ááºáá»á¬ážááᯠáááºážáááºážá¡áá»áá¯ážáá»áá¯ážááŒáá·áº á¡ááá·áºááŒáŸáá·áºáááºáá¬ážááŒá®áž áááºážááá¯á·ááᯠáááºáá®ážáááºááŸáá·áº á
á®áá¶ááá·áºááœá²ááẠááá¯ááá¯ááœááºáá°á
á±áᬠááá
áºáá
áºáá»ááºááŸáááºáá¯á¶ááŒáá·áº áá
áºáá»ááºááœá±ážáá»ááºááŸá¯áá»á¬ážááᯠááŒá±á¬ááºážáá²ááá¯ááºááá·áºá
áœááºážáááºááᯠáá±á«ááºážááá·áºáá¬ážáááºá áááºááŸáºáá¯ááºááá¬ážááœááºá¡ááœááºá¡á
á¬ážááẠááá¯á¡áá« á¡ááœááºáá»ááºááŒáá·áºáá±á¬á
ááááºáá»á¬ážááŸáá·áº ááŒá®ážáá¬ážáá±á¬á
ááááºáá»á¬ážááᯠáá¶á·ááá¯ážáááºá¡ááœáẠááá·áºáá»á±á¬áºáá«áááºá
á¡á á¯ááá¯ááºááŒáá·áºááŸá¯ááŸá¯ááᯠáá¶á·ááá¯ážáááºá¡ááœáẠááŒá¿áá¬ááŒáááŸá¯áá áºáá»ááºááᯠááŒáŸáá·áºáááºáá¬ážááŒá®áž ááŸá±á·ááŒá±ážáá¯á¶á á¶ááááºáá»á¬ážááá¯ááŒááááºá¡ááœáẠáá áºáá»ááºá¡áá áºáá áºáá¯ááᯠááááºáááºáá²á·áááºá
ááá¯á·á¡ááŒááºá áá áºáá»ááºáá»á¬ážá¡á¬ážáá¯á¶ážááᯠheadless mode ááœááºááŒáááá¯ááºáá«ááŒá®á
áá áºá ááá¯ááááºáá»á¬ážááŸáá·áº áá±áᬠá á¯á ááºážááŸá¯
Zabbix 4.4 ááẠáá
áºá
ááá¯ááááºáá»á¬ážááᯠáá¶á·ááá¯ážáá±ážááŒá®áž ááááºáá
áºáá
áºáá»ááºááẠá¡áá»áá¯ážáá»áá¯ážáá±á¬ áá±á«ááºážá
ááºáá¯ááºáá±á¬ááºáá»ááºáá»á¬ážááᯠá¡áá¯á¶ážááŒá¯áᬠááá¯á¡áá« á¡áá»ááºá¡áááºáá»á¬ážááᯠá
á¯á
ááºážááá¯ááºáá«ááŒá®á á€á¡ááºá¹áá«áááºááŸá
áºáá¯á áá±á«ááºážá
ááºááŸá¯ááẠáá±ááŸááºáá±áá¬ááœá²ááŒááºážá
áááºááŒá¬ááŸá¯ááŸáá·áº á
áœááºážáá±á¬ááºáááºá¡á
á®á¡á
á¥áºááᯠáá»á¬ážá
áœá¬ááœááºáá°áá»á±á¬ááœá±á·á
á±áááºá
â
ááááºáá±á¬ááºážá¡áá áºáá»á¬ážá¡ááœááºááá¬ážáááºáá¶á·ááá¯ážááŸá¯
Zabbix 4.4 ááẠááá¯á¡á±á¬ááºáá«ááááºáá±á¬ááºážáá»á¬ážááœáẠá¡áá¯ááºáá¯ááºáááº-
- SUSE Linux áá¯ááºáááºážáá¬áᬠáá
- debian 10
- Raspbian áá
- ááá¬áž á.á
- Mac OS/X á¡ááœáẠááá¯ááºá á¬ážááŸááº
- Windows á¡ááœáẠMSI á¡á±ážáá»áá·áº
áááŸáááá¯ááºáá±á¬ ááááºáá±á¬ááºážá¡á¬ážáá¯á¶ážááᯠááœáẠááœá±á·ááá¯ááºáá«áááºá
áá
áºáá»ááºááŸáááºáá¯á¶ááŒáá·áº cloud ááœáẠááá·áºááœááºážááŒááºážá
Zabbix ááᯠááœááºááááºáá¬áá
áºáᯠááá¯á·ááá¯áẠcloud áááºáá±á¬ááºááŸá¯á¡áá»áá¯ážáá»áá¯ážááœáẠá¡áá¯á¶ážááŒá¯ááẠá¡ááá·áºáá¯á¶ážáá
áºáá¯á¶á¡ááŒá
Ạá¡ááœááºááá° ááá·áºááœááºážááá¯ááºáááº-
- AWS
- Azure
- áá°áááºááºááááºááá¯ááºááááºáá±á¬ááºáž
- áá áºáá»á áºáááºááá¯áá¹ááá¬
- Docker
áá¯á¶ááŒááºá áááºáá»ááá±á¬á¡ááá¯á¡áá»á±á¬ááºááŸááºáá¯á¶áááºááŒááºážá
Zabbix á áá¬ážááŸááºážá¡áá
áºááẠáá±á«ááºážááá·áºáá¬ážáá±á¬ host áá»á¬ážá¡ááœáẠá¡ááá¯á¡áá»á±á¬áẠáá¯ááºááŸááºááŒááºáž áááºáááºáá»á¬ážááŸáá·áºá¡áá° á¡ááá¯á¡áá»á±á¬áẠááŸááºáá¯á¶áááºáááºá¡ááœáẠPSK áá¯ááºááŸááºá
áá
áºááᯠá¡áá¯á¶ážááŒá¯ááá¯ááºáááºá PSK áá¬á áá¯ááºááá±á¬áºáá² áááºááẠááá¯á·ááá¯áẠááŸá
áºáá»áá¯ážáá¯á¶ážááᯠá¡áá¯á¶ážááŒá¯á ááœááºáááºá
ááºáá
á¹á
ááºážáá»á¬ážááᯠá¡ááá¯á¡áá»á±á¬ááºááŸááºáá¯á¶áááºááœáá·áºááŒá¯ááẠááᯠZabbix ááᯠáááºáááºááŸááºááá¯ááºáá«ááŒá®á
â
ááŒáá¯áááºáá¯ááºáá±á¬ááºááŒááºážá¡ááœáẠJSONPath ááᯠááá¯ážáá»á²á·áá¬ážáááºá
ááᯠZabbix ááẠáá±á«ááºážá
ááºážááŒááºážááŸáá·áº ááŸá¬ááœá±ááŒááºážá¡áá«á¡ááẠááŸá¯ááºááœá±ážáá±á¬ JSON áá±áá¬ááᯠááŒáá¯áááºáá¯ááºáá±á¬ááºááŒááºážá¡á¬áž ááœáá·áºááŒá¯áá±ážááá·áº ááá¯ážáá»á²á· JSONPath syntax ááᯠáá¶á·ááá¯ážáá±ážáá«áááºá ááŒáá¯áááºáá¯ááºáá±á¬ááºááŒááºážááᯠá¡ááá·áºáááá·áºááŸá¬ááœá±ááœá±á·ááŸáááŸá¯á¡ááœááºáááºáž á¡áá¯á¶ážááŒá¯ááá¯ááºááŒá®áž áááºážááᯠá¡ááá¯á¡áá»á±á¬ááºáá¯ááºáá±á¬ááºááŒááºážááŸáá·áº ááŸá¬ááœá±ááœá±á·ááŸáááŒááºážá¡ááœáẠá¡ááœááºá¡á
áœááºážáááºááá·áºáááááá¬áá
áºáá¯ááŒá
áºá
á±áááºá
á¡áá¯á¶ážááŒá¯áá° macro áá±á¬áºááŒáá»ááº
á
áááºááŒáá¯áẠmacro áá»á¬ážááẠZabbix configuration ááá¯ááá¯ážááŸááºážááœááºáá°á
á±ááŒá®áž configuration ááá¯ááŒá±á¬ááºážáá²áááºááá¯ááá¯ááœááºáá°á
á±ááá·áºá¡ááœááºáá±á¬ááºážááœááºáá±á¬áá¯ááºáá±á¬ááºááá¯ááºá
áœááºážáá
áºáá¯ááŒá
áºáááºá á
áááºááŒáá¯áẠmacro áá±á¬áºááŒáá»ááºáá»á¬ážá¡ááœáẠáá¶á·ááá¯ážáá°áá®ááŸá¯ááẠáááºáááá¯áá
áºáá¯á
á®á áááºááœááºáá»ááºááᯠááŸááºáááºážáááºááẠáá°áá®áá±ážáááºááŒá
áºááŒá®áž áááºážááá¯á·ááᯠá
á®áá¶ááá·áºááœá²ááẠááá¯ááá¯ááœááºáá°á
á±áááºá
ááá¯ááá¯áááá±á¬ááºáá±á¬á¡ááá·áºááŒáá·áºáá±áá¬á á¯áá±á¬ááºážááŒááºážá
WMIá JMXá ááŸáá·áº ODBC ááá¯á·ááŸáá·áº áááºááá¯ááºááá·áº á¡áá¬ááá¹áá¯áá»á¬ážá áá±áá¬á
á¯áá±á¬ááºážááŒááºážááŸáá·áº ááŸá¬ááœá±ááœá±á·ááŸáááŸá¯ááᯠJSON áá±á¬áºáááºááŒáá·áº ááŒááºáá±ážááá·áº á
á
áºáá±ážáá»ááºá¡áá
áºáá»á¬ážááŒáá·áº ááá¯ááá¯áá±á¬ááºážááœááºáá¬áá«áááºá Linux ááááºáá±á¬ááºážá¡ááœáẠVMWare áá±áá¬á
ááá¯ážááá¯ááºáá»á¬ážá¡ááœáẠVMWare áá±áá¬á
ááá¯ážááá¯ááºáá»á¬ážá¡ááœáẠáá¶á·ááá¯ážáá°áá®ááŸá¯áááºáž ááá·áºááœááºážáá±ážáá¬ážááŒá®áž CSV ááá¯á· JSON á¡ááŒá
áºááŒá±á¬ááºážáá²ááŒááºážá¡ááœáẠááŒáá¯áááºáá¯ááºáá±á¬ááºááŒááºážá¡áá»áá¯ážá¡á
á¬ážá¡áá
áºááá¯áááºáž ááá·áºááœááºážáá¬ážáá«áááºá
Zabbix 4.4 ááœáẠá¡ááŒá¬ážáá±á¬ áá¯ááºáá±á¬ááºáá»ááºá¡áá áºáá»á¬ážááŸáá·áº ááá¯ážáááºááŸá¯áá»á¬áž
- LLD á០XML áá±áá¬ááᯠááŒáá¯áááºáá¯ááºáá±á¬ááºááŒááºážá
- á¡áá»á¬ážáá¯á¶ážááŸá®ááá¯áááºááá áºá¡áá±á¡ááœááºááᯠáá,ááá áá»ááºá¡áá ááá¯ážááŒáŸáá·áºáá¬ážáááºá
- JSONPath ááŒáá¯áááºáá¯ááºáá±á¬ááºááŒááºážááá¯á· á¡ááá¯á¡áá»á±á¬ááºá¡áá»áá¯ážá¡á á¬ážááŒá±á¬ááºážáá²ááŒááºážááᯠáá±á«ááºážááá·áºáá¬ážáááºá
- á¡áá»áááºááŸáá·áºáá áºááŒá±ážáá® áá¯ááºáá°ááŒááºážááá¯ááºáá»á¬ážááœáẠáááºáá¶áááºáá¶áá°á¡áááº
- ááá¯á¡áá« Windows á¡á±ážáá»áá·áºááẠá¡ááºá¹áááááºáá¬áá¬ááŒáá·áº á áœááºážáá±á¬ááºáááºáá±á¬ááºáá¬áá»á¬ážááᯠáá¶á·ááá¯ážáá±ážáá«áááºá
- á¡ááŸá¬ážá¡ááœááºážáá»á¬ážááŸááá»áŸáẠááŒáá¯áááºáá¯ááºáá±á¬ááºááŒááºážááœáẠáááºááá¯ážáá»á¬ážááᯠáá»á áºáá»á°ááŸá¯ááá¯ááºááŸá¯
- áááá¯ááºážáá±áá¬ááá¯áá¬áá ááá¯ááºááá¯ááºáá±áá¬ááá¯áá« áááºáá±á¬ááºá¡áá¯á¶ážááŒá¯ááá¯ááºá á±ááẠáá±á¬ááºáá¯á¶ážáá±áá¬ááᯠááá¯ážáá»á²á·áá¬ážáá«áááºá
- á¡á áá»áá¯ážáá±á¬áºááŒáá»ááºáá»á¬ážááᯠáááºážááŒááºááá¯ááºááŸá¯ááᯠáááºááŸá¬ážááá¯ááºáááºá áááºážááá¯á·áᶠáááºáá±á¬ááºááœáá·áºááẠá¡ááœááºááá¯ážááŸááºážáá«áááºá
- Webhooks ááá¯á·ááá¯áẠááŒááºá script áá»á¬ážááᯠá¡áá¯á¶ážááŒá¯á built-in Jabber ááŸáá·áº Eztexting áá®áá®áá¬á¡áá»áá¯ážá¡á á¬ážáá»á¬ážá¡ááœáẠáá¶á·ááá¯ážááŸá¯ááᯠáááºááŸá¬ážááá¯ááºáááº
- áá¯á¶áá± áááºááŸáºáá¯ááºááᯠá¡ááºááááºáá¯ááºáá¬ážáááºá
- á¡ááá¯á¡áá»á±á¬ááºááŸááºáá¯á¶áááºáá¬ážáá±á¬ host áá»á¬ážááẠâdns ááá¯á· áá»áááºáááºáááºâ ááá¯á·ááá¯áẠâIP ááá¯á· áá»áááºáááºáááºâ ááœá±ážáá»ááºááœáá·áºááᯠáááºááŸááºááá¯ááºáá±ááŒá®ááŒá áºáááºá
- Trigger URL á¡ááœáẠ{EVENT.ID} macro á¡ááœáẠáá¶á·ááá¯ážááŸá¯ áááºááá·áºáá¬ážáááºá
- áá»ááºááŸá¬ááŒáẠá¡á áááºá¡ááá¯ááºážááᯠááá¶á·ááá¯ážáá±á¬á·áá«á
- áá±á¬ááºáá¯á¶ážáááºáá®ážáá¬ážááá·áº áááºááŸáºáá¯ááºáá áºáá»ááºá¡áá»áá¯ážá¡á á¬ážááᯠááŸááºááááŒá®áž á¡áá¬áááºááœáẠááŒááºáááºá¡áá¯á¶ážááŒá¯ááá¯ááºáá«áááºá
- áá áºáá»ááºáá±á«ááºážá ááºáá»á¬ážááᯠááŒááºááá¯ááºááŸá¯ááẠáá áºáá»ááºáá áºáá¯á á®á¡ááœáẠááŒááºáááºáááºááŸááºááá¯ááºáááºá
Zabbix 4.4 á á¡ááºá¹áá«áááºá¡áá
áºáá»á¬ážá
á¬áááºážáá
áºáá¯áá¯á¶ážááᯠááœá±á·ááŸáááá¯ááºáá«áááºá
source: www.habr.com