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

ntopConf 2019 - The network is a (great) signal

ntopConf 2019 - The network is a (great) signal

We need a stable network. With microservices even more than ever because internally our services are speaking between each other as never before.
A lot of the tools like Wireshark, ntop (the current one) designed to monitor networks are awkward to me. Because I am a developer, not an expert about the network. That's it. The problem is: nobody called the support team to notify that packet loss is too high, they call when the software we develop doesn't work. The network is one of the important signals to look at when something doesn't work but we need better tools. I am trying to make network folks and developers new friends!

Gianluca Arbezzano

May 09, 2019
Tweet

More Decks by Gianluca Arbezzano

Other Decks in Technology

Transcript

  1. View Slide






  2. View Slide

  3. @gianarb - [email protected]

    View Slide

  4. @gianarb - [email protected]

    View Slide

  5. View Slide

  6. [global_tags]
    env = "$ENV"
    hostname = "$HOSTNAME"

    View Slide

  7. View Slide

  8. View Slide

  9. View Slide

  10. ~ @gianarb - https://gianarb.it ~
    Metrics Traces Logs

    View Slide

  11. ~ @gianarb - https://gianarb.it ~
    Metric
    s

    View Slide

  12. ~ @gianarb - https://gianarb.it ~
    Logs

    View Slide

  13. ~ @gianarb - https://gianarb.it ~
    Traces

    View Slide

  14. ~ @gianarb - https://gianarb.it ~

    View Slide

  15. View Slide

  16. View Slide

  17. View Slide

  18. View Slide

  19. View Slide

  20. View Slide

  21. // get all data from the telegraf db
    from(bucket:”telegraf/autogen”)
    // filter that by the last hour
    |> range(start:-1h)
    // filter further by series with a specific measurement and field
    |> filter(fn: (r) => r._measurement == "cpu" and r._field == "usage_system")

    View Slide

  22. // get all data from the telegraf db
    from(bucket:”telegraf/autogen”)
    // filter that by the last hour
    |> range(start:-1h)
    // filter further by series with a specific measurement and field
    |> filter(fn: (r) => r._measurement == "cpu" and r._field == "usage_system")

    View Slide

  23. // get all data from the telegraf db
    from(bucket:”telegraf/autogen”)
    // filter that by the last hour
    |> range(start:-1h)
    // filter further by series with a specific measurement and field
    |> filter(fn: (r) => r._measurement == "cpu" and r._field == "usage_system")

    View Slide

  24. // get all data from the telegraf db
    from(bucket:”telegraf/autogen”)
    // filter that by the last hour
    |> range(start:-1h)
    // filter further by series with a specific measurement and field
    |> filter(fn: (r) => r._measurement == "cpu" and r._field == "usage_system")

    View Slide

  25. // get all data from the telegraf db
    from(bucket:”telegraf/autogen”)
    // filter that by the last hour
    |> range(start:-1h)
    // filter further by series with a specific measurement and field
    |> filter(fn: (r) => r._measurement == "cpu" and r._field == "usage_system")

    View Slide

  26. // get all data from the telegraf db
    from(bucket:”telegraf/autogen”)
    // filter that by the last hour
    |> range(start:-1h)
    // filter further by series with a specific measurement and field
    |> filter(fn: (r) => r._measurement == "cpu" and r._field == "usage_system")

    View Slide

  27. // get all data from the telegraf db
    from(bucket:”telegraf/autogen”)
    // filter that by the last hour
    |> range(start:2018-11-07T00:00:00Z)
    // filter further by series with a specific measurement and field
    |> filter(fn: (r) => r._measurement == "cpu" and r._field == "usage_system")

    View Slide

  28. // get all data from the telegraf db
    from(bucket:”telegraf/autogen”)
    // filter that by the last hour
    |> range(start:-1h)
    // filter further by series with a specific measurement and field
    |> filter(fn: (r) => r._measurement == "cpu" and r._field == "usage_system")

    View Slide

  29. // get all data from the telegraf db
    from(bucket:”telegraf/autogen”)
    // filter that by the last hour
    |> range(start:-1h)
    // filter further by series with a specific measurement and field
    |> filter(fn: (r) => r._measurement == "cpu" and r._field == "usage_system")

    View Slide

  30. // get all data from the telegraf db
    from(bucket:”telegraf/autogen”)
    // filter that by the last hour
    |> range(start:-1h)
    // filter further by series with a specific measurement and field
    |> filter(fn: (r) => (r._measurement == "cpu" or r._measurement == “cpu")
    and r.host == “serverA")

    View Slide

  31. View Slide

  32. ¨
    ¨
    ¨

    View Slide

  33. View Slide

  34. View Slide