Upgrade to Pro — share decks privately, control downloads, hide ads and more …

«Обновления в плагине Grafana Zabbix» — Александр Зобнин, Grafana Labs

Badoo Tech
June 26, 2018
9.2k

«Обновления в плагине Grafana Zabbix» — Александр Зобнин, Grafana Labs

Александр занимается непосредственно разработкой Grafana, а также поддержкой и развитием плагина для Zabbix.

Он расскажет о новых возможностях, которые появились в плагине за последнее время, заглянет под капот и покажет, как SQL data sources в Grafana позволяют повысить производительность отрисовки графиков. Также поделится планами по переносу плагина на backend.

Выступление на Zabbix Moscow Meetup 2018 в офисе Badoo.

Badoo Tech

June 26, 2018
Tweet

More Decks by Badoo Tech

Transcript

  1. Grafana-Zabbix
    plugin update

    View Slide

  2. View Slide

  3. • Visualize

    • Dynamic dashboards

    • 30+ data sources

    • Alerting

    • Plugins

    View Slide

  4. Updates

    v3.6 - v3.9

    View Slide

  5. Triggers Panel

    View Slide

  6. View Slide

  7. Background
    highlight
    TV view

    View Slide

  8. Light theme

    View Slide

  9. Triggers Panel
    • Multiple datasources support

    • Filtering by tags

    View Slide

  10. Direct DB connection
    fetching history data from DB

    View Slide

  11. Zabbix API
    Backend
    Frontend

    View Slide

  12. Zabbix API
    Backend
    Frontend

    View Slide

  13. Zabbix API
    Backend
    Frontend

    View Slide

  14. View Slide

  15. View Slide

  16. Zabbix API
    Backend
    Frontend

    View Slide

  17. Zabbix API
    Zabbix DS

    View Slide

  18. SELECT itemid AS metric,
    clock / {intervalSec} * {intervalSec} AS time,
    {aggFunc}(value) AS value
    FROM {historyTable}
    WHERE itemid IN ({itemids})
    AND clock > {timeFrom} AND clock < {timeTill}
    GROUP BY 1, 2
    ORDER BY time ASC

    View Slide

  19. SELECT itemid AS metric,
    clock / {intervalSec} * {intervalSec} AS time,
    {aggFunc}(value) AS value
    FROM {historyTable}
    WHERE itemid IN ({itemids})
    AND clock > {timeFrom} AND clock < {timeTill}
    GROUP BY 1, 2
    ORDER BY time ASC

    View Slide

  20. Backend
    Frontend
    Aggregated data

    View Slide

  21. Zabbix API
    Zabbix DS
    History, Trend
    Host, Item, …

    View Slide

  22. Zabbix DS

    View Slide

  23. Zabbix DS
    In progress

    View Slide

  24. What’s next?

    View Slide

  25. Backend plugins
    •Alerting

    •Improve caching

    •Move data processing to backend

    View Slide

  26. Data flow
    Zabbix API
    Query
    Cache
    Proxy
    Processing

    View Slide

  27. Zabbix API
    Query
    Cache
    Proxy
    Processing Query
    Cache
    Proxy
    Processing
    Client 1 Client 2

    View Slide

  28. Zabbix API
    Query
    Client 1
    Query
    Client 2
    Cache
    Proxy Processing
    Backend

    View Slide

  29. Александр Зобнин
    [email protected]
    [email protected]
    github.com/alexanderzobnin/grafana-zabbix/

    View Slide