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

UX Design and Education for Effective Monitoring Tools (Monitorama PDX 2017)

UX Design and Education for Effective Monitoring Tools (Monitorama PDX 2017)

Abstract:
I, like many of us, chose to work in infrastructure because I thought it meant I could avoid talking to other people as much as possible. I was wrong. It turns out that a huge amount of work in monitoring is about empowering the rest of your engineering organization to use the tools you develop correctly, quickly, and effectively. A huge amount of our time is spent explaining how to interpret timeseries data and why averaging percentiles is a bad idea. After feedback from our engineers, we embarked on a journey to redesign our internal monitoring tools and understand where people were struggling with the existing system.

In this talk, I will explain how we approached the problem of making concepts like interpolation, aggregation, and alerting more intuitive and how we identified pain points for new users. I will outline common misconceptions our users have about monitoring and how we cleared up this confusion in our UI without forcing everyone to spend hours on documentation. Rather than copying and pasting existing UX design principles onto our monitoring problems, we will see how we can reinterpret these ideas and apply them to our unique situation to create a better experience for everyone.

Amy Nguyen

May 24, 2017
Tweet

More Decks by Amy Nguyen

Other Decks in Technology

Transcript

  1. Amy Nguyen @amyngyn Monitorama PDX 2017
    UX Design and Education for
    Effective Monitoring Tools

    View Slide

  2. Amy Nguyen @amyngyn Monitorama PDX 2017
    Agenda
    - Background
    - Motivation
    - Sharing what you know
    - Designing what your users want
    - Recap

    View Slide

  3. Amy Nguyen @amyngyn Monitorama PDX 2017
    Agenda
    - Background
    - Motivation
    - Sharing what you know
    - Designing what your users want
    - Recap

    View Slide

  4. Amy Nguyen @amyngyn Monitorama PDX 2017
    Hi!
    - Joined Pinterest in 2015

    View Slide

  5. Amy Nguyen @amyngyn Monitorama PDX 2017
    Hi!
    - Joined Pinterest in 2015
    - Recent projects:

    View Slide

  6. Amy Nguyen @amyngyn Monitorama PDX 2017
    Hi!
    - Joined Pinterest in 2015
    - Recent projects:
    ○ tracing for performance

    View Slide

  7. Amy Nguyen @amyngyn Monitorama PDX 2017
    Hi!
    - Joined Pinterest in 2015
    - Recent projects:
    ○ tracing for performance
    ○ D3 data visualizations

    View Slide

  8. Amy Nguyen @amyngyn Monitorama PDX 2017
    Hi!
    - Joined Pinterest in 2015
    - Recent projects:
    ○ tracing for performance
    ○ D3 data visualizations
    ○ cache for OpenTSDB data

    View Slide

  9. Amy Nguyen @amyngyn Monitorama PDX 2017
    Hi!
    - Joined Pinterest in 2015
    - Recent projects:
    ○ tracing for performance
    ○ D3 data visualizations
    ○ cache for OpenTSDB data
    ○ so much documentation omg

    View Slide

  10. Amy Nguyen @amyngyn Monitorama PDX 2017
    Hi!
    - Joined Pinterest in 2015
    - Recent projects:
    ○ tracing for performance
    ○ D3 data visualizations
    ○ cache for OpenTSDB data
    ○ so much documentation omg
    - amynguyen.net
    @amyngyn
    pinterest.com/amyngyn

    View Slide

  11. Amy Nguyen @amyngyn Monitorama PDX 2017
    About Pinterest
    the world's first visual discovery engine

    View Slide

  12. Amy Nguyen @amyngyn Monitorama PDX 2017
    About Pinterest
    - 175 million monthly active users
    the world's first visual discovery engine

    View Slide

  13. Amy Nguyen @amyngyn Monitorama PDX 2017
    About Pinterest
    - 175 million monthly active users
    - 100 billion pins
    the world's first visual discovery engine

    View Slide

  14. Amy Nguyen @amyngyn Monitorama PDX 2017
    About Pinterest
    - 175 million monthly active users
    - 100 billion pins
    - 2 billion boards
    the world's first visual discovery engine

    View Slide

  15. Amy Nguyen @amyngyn Monitorama PDX 2017
    About Pinterest
    - 175 million monthly active users
    - 100 billion pins
    - 2 billion boards
    - 2 billion searches every month
    the world's first visual discovery engine

    View Slide

  16. Amy Nguyen @amyngyn Monitorama PDX 2017
    About Pinterest
    - 175 million monthly active users
    - 100 billion pins
    - 2 billion boards
    - 2 billion searches every month
    - 150,000 requests served per second
    the world's first visual discovery engine

    View Slide

  17. Amy Nguyen @amyngyn Monitorama PDX 2017
    About Pinterest Monitoring
    the world's first greatest monitoring team

    View Slide

  18. Amy Nguyen @amyngyn Monitorama PDX 2017
    About Pinterest Monitoring
    - Graphite, OpenTSDB, Kafka, Storm,
    Spark, ELK, Sumo Logic, Zipkin
    the world's first greatest monitoring team

    View Slide

  19. Amy Nguyen @amyngyn Monitorama PDX 2017
    About Pinterest Monitoring
    - Graphite, OpenTSDB, Kafka, Storm,
    Spark, ELK, Sumo Logic, Zipkin
    - 100 terabytes logged per day
    the world's first greatest monitoring team

    View Slide

  20. Amy Nguyen @amyngyn Monitorama PDX 2017
    About Pinterest Monitoring
    - Graphite, OpenTSDB, Kafka, Storm,
    Spark, ELK, Sumo Logic, Zipkin
    - 100 terabytes logged per day
    - 2.5M metrics ingested per second
    the world's first greatest monitoring team

    View Slide

  21. Amy Nguyen @amyngyn Monitorama PDX 2017
    About Pinterest Monitoring
    - Graphite, OpenTSDB, Kafka, Storm,
    Spark, ELK, Sumo Logic, Zipkin
    - 100 terabytes logged per day
    - 2.5M metrics ingested per second
    - Over 400 engineers
    the world's first greatest monitoring team

    View Slide

  22. Amy Nguyen @amyngyn Monitorama PDX 2017
    About Pinterest Monitoring
    - Graphite, OpenTSDB, Kafka, Storm,
    Spark, ELK, Sumo Logic, Zipkin
    - 100 terabytes logged per day
    - 2.5M metrics ingested per second
    - Over 400 engineers customers!
    the world's first greatest monitoring team

    View Slide

  23. Amy Nguyen @amyngyn Monitorama PDX 2017
    Our Tools: Dashboards

    View Slide

  24. Amy Nguyen @amyngyn Monitorama PDX 2017
    Our Tools: Graph Exploration

    View Slide

  25. Amy Nguyen @amyngyn Monitorama PDX 2017
    Our Tools: Alerting

    View Slide

  26. Amy Nguyen @amyngyn Monitorama PDX 2017
    Agenda
    - Background
    - Motivation
    - Sharing what you know
    - Designing what your users want
    - Recap

    View Slide

  27. Amy Nguyen @amyngyn Monitorama PDX 2017
    Why should we care about
    user experience?

    View Slide

  28. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  29. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  30. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  31. Amy Nguyen @amyngyn Monitorama PDX 2017
    Why should we care about user experience?

    View Slide

  32. Amy Nguyen @amyngyn Monitorama PDX 2017
    Why should we care about user experience?
    - Prevent misunderstandings: not everyone is (or should
    have to be) an expert at interpreting monitoring data

    View Slide

  33. Amy Nguyen @amyngyn Monitorama PDX 2017
    Why should we care about user experience?
    - Prevent misunderstandings: not everyone is (or should
    have to be) an expert at interpreting monitoring data
    - Developer velocity: help people reach conclusions
    faster, help your company move faster

    View Slide

  34. Amy Nguyen @amyngyn Monitorama PDX 2017
    Why should we care about user experience?
    - Prevent misunderstandings: not everyone is (or should
    have to be) an expert at interpreting monitoring data
    - Developer velocity: help people reach conclusions
    faster, help your company move faster
    - Data democracy: you don't know what questions
    people want to answer with their own data

    View Slide

  35. Amy Nguyen @amyngyn Monitorama PDX 2017
    "The fastest way to become a 10x engineer is
    to help 10 other engineers do their jobs better.
    - Wayne Gretzky"
    - Michael Scott

    View Slide

  36. Amy Nguyen @amyngyn Monitorama PDX 2017
    Why should we care about user experience?
    - Prevent misunderstandings: not everyone is (or should
    have to be) an expert at interpreting timeseries data
    - Developer velocity: help people reach conclusions
    faster, help your company move faster
    - Data democracy: you don't know what questions
    people want to answer with their own data

    View Slide

  37. Amy Nguyen @amyngyn Monitorama PDX 2017
    Why should we care about user experience?
    - Prevent misunderstandings: not everyone is (or should
    have to be) an expert at interpreting timeseries data
    - Developer velocity: help people reach conclusions
    faster, help your company move faster
    - Data democracy: you don't know what questions
    people want to answer with their own data

    View Slide

  38. Amy Nguyen @amyngyn Monitorama PDX 2017
    Why should we care about user experience?
    Because we can help engineers work correctly, quickly,
    and independently.

    View Slide

  39. Amy Nguyen @amyngyn Monitorama PDX 2017
    UX and Your Situation

    View Slide

  40. Amy Nguyen @amyngyn Monitorama PDX 2017
    UX and Your Situation
    team

    View Slide

  41. Amy Nguyen @amyngyn Monitorama PDX 2017
    UX and Your Situation
    team
    documentation

    View Slide

  42. Amy Nguyen @amyngyn Monitorama PDX 2017
    UX and Your Situation
    team
    documentation
    tools

    View Slide

  43. Amy Nguyen @amyngyn Monitorama PDX 2017
    UX and Your Situation
    team
    documentation
    tools
    probably paying for
    vendors TBH?

    View Slide

  44. Amy Nguyen @amyngyn Monitorama PDX 2017
    UX and Your Situation
    team
    documentation
    tools
    probably paying for
    vendors TBH?
    this talk

    View Slide

  45. Amy Nguyen @amyngyn Monitorama PDX 2017
    UX and Your Situation
    team
    documentation
    tools
    probably paying for
    vendors TBH?
    this talk
    things we can
    all control

    View Slide

  46. Amy Nguyen @amyngyn Monitorama PDX 2017
    - Background
    - Motivation
    - Sharing what you know
    - Designing what your users want
    - Recap
    Agenda

    View Slide

  47. Amy Nguyen @amyngyn Monitorama PDX 2017
    Sharing what you know

    View Slide

  48. Amy Nguyen @amyngyn Monitorama PDX 2017
    Sharing what you know
    1. Education vs intuition: Don't overload people with too
    much information.

    View Slide

  49. Amy Nguyen @amyngyn Monitorama PDX 2017
    will the wifi work? who knows?

    View Slide

  50. Amy Nguyen @amyngyn Monitorama PDX 2017
    stats.example.metric.errors > 5

    View Slide

  51. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  52. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  53. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  54. Amy Nguyen @amyngyn Monitorama PDX 2017
    Sharing what you know
    1. Education vs intuition: Don't overload people with too
    much information.
    2. Best practices: Use your expertise to determine the
    most helpful default behavior.

    View Slide

  55. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  56. Amy Nguyen @amyngyn Monitorama PDX 2017
    Sharing what you know
    1. Education vs intuition: Don't overload people with too
    much information.
    2. Best practices: Use your expertise to determine the
    most helpful default behavior.
    3. Potential pitfalls: Make it hard to do the wrong thing.

    View Slide

  57. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  58. Amy Nguyen @amyngyn Monitorama PDX 2017
    It looks like you're trying
    to alert on the most
    recent data.
    Are you sure you want
    to do that?

    View Slide

  59. Amy Nguyen @amyngyn Monitorama PDX 2017
    - Background
    - Motivation
    - Sharing what you know
    - Designing what your users want
    - Recap
    Agenda

    View Slide

  60. Amy Nguyen @amyngyn Monitorama PDX 2017
    Designing what your users want
    1. Performance: Do whatever it takes to make it fast.

    View Slide

  61. Amy Nguyen @amyngyn Monitorama PDX 2017
    Performance: Low Hanging Fruit!

    View Slide

  62. Amy Nguyen @amyngyn Monitorama PDX 2017
    Performance: Low Hanging Fruit!
    - Backend

    View Slide

  63. Amy Nguyen @amyngyn Monitorama PDX 2017
    Performance: Low Hanging Fruit!
    - Backend
    - Roll-up data over long time ranges

    View Slide

  64. Amy Nguyen @amyngyn Monitorama PDX 2017
    Performance: Low Hanging Fruit!
    - Backend
    - Roll-up data over long time ranges
    - Store latest data in memory (e.g., Facebook's Gorilla paper and
    Beringei project)

    View Slide

  65. Amy Nguyen @amyngyn Monitorama PDX 2017
    Performance: Low Hanging Fruit!
    - Backend
    - Roll-up data over long time ranges
    - Store latest data in memory (e.g., Facebook's Gorilla paper and
    Beringei project)
    - Add a cache layer (e.g., Turn's Splicer project)

    View Slide

  66. Amy Nguyen @amyngyn Monitorama PDX 2017
    Performance: Low Hanging Fruit!
    - Backend
    - Roll-up data over long time ranges
    - Store latest data in memory (e.g., Facebook's Gorilla paper and
    Beringei project)
    - Add a cache layer (e.g., Turn's Splicer project)
    yeah sure get back to
    us in 6 months

    View Slide

  67. Amy Nguyen @amyngyn Monitorama PDX 2017
    Performance: Low Hanging Fruit!
    - Backend
    - Roll-up data over long time ranges
    - Store latest data in memory (e.g., Facebook's Gorilla paper and
    Beringei project)
    - Add a cache layer (e.g., Turn's Splicer project)
    - Frontend

    View Slide

  68. Amy Nguyen @amyngyn Monitorama PDX 2017
    Performance: Low Hanging Fruit!
    - Backend
    - Roll-up data over long time ranges
    - Store latest data in memory (e.g., Facebook's Gorilla paper and
    Beringei project)
    - Add a cache layer (e.g., Turn's Splicer project)
    - Frontend
    - Don't reload existing data if the user changes the time window

    View Slide

  69. Amy Nguyen @amyngyn Monitorama PDX 2017
    Performance: Low Hanging Fruit!
    - Backend
    - Roll-up data over long time ranges
    - Store latest data in memory (e.g., Facebook's Gorilla paper and
    Beringei project)
    - Add a cache layer (e.g., Turn's Splicer project)
    - Frontend
    - Don't reload existing data if the user changes the time window
    - Prevent the user from requesting the data incessantly

    View Slide

  70. Amy Nguyen @amyngyn Monitorama PDX 2017
    Performance: Low Hanging Fruit!
    - Backend
    - Roll-up data over long time ranges
    - Store latest data in memory (e.g., Facebook's Gorilla paper and
    Beringei project)
    - Add a cache layer (e.g., Turn's Splicer project)
    - Frontend
    - Don't reload existing data if the user changes the time window
    - Prevent the user from requesting the data incessantly
    - Lazy-load graphs on a dashboard

    View Slide

  71. Amy Nguyen @amyngyn Monitorama PDX 2017
    Performance: Low Hanging Fruit!
    - Backend
    - Roll-up data over long time ranges
    - Store latest data in memory (e.g., Facebook's Gorilla paper and
    Beringei project)
    - Add a cache layer (e.g., Turn's Splicer project)
    - Frontend
    - Don't reload existing data if the user changes the time window
    - Prevent the user from requesting the data incessantly
    - Lazy-load graphs on a dashboard
    - Disclaimer: We haven't done all of these things.

    View Slide

  72. Amy Nguyen @amyngyn Monitorama PDX 2017
    Designing what your users want
    1. Performance: Do whatever it takes to make it fast.
    2. Exploration: Make it easy to try things without fear.

    View Slide

  73. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  74. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  75. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  76. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  77. Amy Nguyen @amyngyn Monitorama PDX 2017
    Designing what your users want
    1. Performance: Do whatever it takes to make it fast.
    2. Exploration: Make it easy to try things without fear.
    3. Simplicity: Make it easy to figure out what to do.

    View Slide

  78. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  79. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  80. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  81. Amy Nguyen @amyngyn Monitorama PDX 2017
    manually type in your metric if
    you know the name somehow

    View Slide

  82. Amy Nguyen @amyngyn Monitorama PDX 2017
    manually type in your metric if
    you know the name somehow
    aggregator

    View Slide

  83. Amy Nguyen @amyngyn Monitorama PDX 2017
    manually type in your metric if
    you know the name somehow
    aggregator hope you remember what tags are
    available for this metric lol

    View Slide

  84. Amy Nguyen @amyngyn Monitorama PDX 2017
    manually type in your metric if
    you know the name somehow
    aggregator
    secret bonus:
    you can downsample?!
    hope you remember what tags are
    available for this metric lol

    View Slide

  85. Amy Nguyen @amyngyn Monitorama PDX 2017
    manually type in your metric if
    you know the name somehow
    aggregator
    secret bonus:
    you can downsample?!
    hope you remember what tags are
    available for this metric lol

    View Slide

  86. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  87. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  88. Amy Nguyen @amyngyn Monitorama PDX 2017

    View Slide

  89. Amy Nguyen @amyngyn Monitorama PDX 2017
    available options
    you probably don't
    need to touch

    View Slide

  90. Amy Nguyen @amyngyn Monitorama PDX 2017
    manual entry
    for power users

    View Slide

  91. Amy Nguyen @amyngyn Monitorama PDX 2017
    relevant information
    needed to create a query!

    View Slide

  92. Amy Nguyen @amyngyn Monitorama PDX 2017
    Designing what your users want
    1. Performance: Do whatever it takes to make it fast.
    2. Exploration: Make it easy to try things without fear.
    3. Simplicity: Make it easy to figure out what to do.

    View Slide

  93. Amy Nguyen @amyngyn Monitorama PDX 2017
    - Background
    - Motivation
    - Sharing what you know
    - Designing what your users want
    - Recap
    Agenda

    View Slide

  94. Amy Nguyen @amyngyn Monitorama PDX 2017
    "The fastest way to become a 10x engineer is
    to help 10 other engineers do their jobs better.
    - Wayne Gretzky"
    - Michael Scott

    View Slide

  95. Amy Nguyen @amyngyn Monitorama PDX 2017
    UX and Your Situation
    team
    documentation
    tools
    probably paying for
    vendors TBH?
    this talk
    things we can
    all control

    View Slide

  96. Amy Nguyen @amyngyn Monitorama PDX 2017
    Sharing what you know
    1. Education vs intuition: Don't overload people with too
    much information.
    2. Best practices: Use your expertise to determine the
    most helpful default behavior.
    3. Potential pitfalls: Make it hard to do the wrong thing.

    View Slide

  97. Amy Nguyen @amyngyn Monitorama PDX 2017
    Designing what your users want
    1. Performance: Do whatever it takes to make it fast.
    2. Exploration: Make it easy to try things without fear.
    3. Simplicity: Make it easy to figure out what to do.

    View Slide

  98. Amy Nguyen @amyngyn Monitorama PDX 2017
    Thanks!

    View Slide