Higher level docs, concrete examples

I’ve used Sensu years ago when it was a Ruby app. I am discovering Sensu Go now and trying to use it to monitor infrastructure.

The docs seem too low-level. I see how to add exactly one check. I see how to add exactly one Slack alert. I see how to add literally all checks in the sense repo (lol). What I don’t see is how to add a group of similar checks that are each a little different, for a specific purpose.

Here’s an example:

Let’s say I want to monitor 10 endpoints, and send Slack alerts when they become unavailable. A basic HTTP check would suffice. I know the URL for each endpoint. I have a Slack channel for alerts.

What are the command sequences to:

  • add the 10 endpoints to the list of checks
  • connect the checks to the Slack alert
  • subscribe an agent so that it runs these checks

you would prob want to use proxy entities, and use labels in those entities to variable out the endpoint urls.

then use a single check with token substitution and proxy entity matching. give the check the same subscription that an agent has that can reach all the endpoints and let it run

All of that sounds great. I have the backend and an agent running, I have a Slack handler already. I can inject synthetic events via curl, and they show up in Slack.

Please bear with me - I just want to point out the information overload for a complete newbie to Sensu Go. “proxy entities”, “labels”, “token substitution”, “proxy entity matching”, etc. None of those terms tell me anything.

The volume of documentation is good. But for folks like me, who learn by example, there’s no example to follow. Start with an empty backend, setup a handler (I did that already) - now go ahead template a dozen HTTP endpoint checks. Where to begin?

Having something simple up and running quickly would go a long way to convince the team that this solution is worth exploring.

Hi! :wave:t3: It sounds like you are looking for documentation more in style “cookbook” in addition to the existing reference documentation. I think this is an excellent suggestion.

1 Like

I’m not sure if I have a good answer for you on this. But we are working on it.
We are putting time into two things aimed at making it easier for operators to get monitoring workloads up and running

  1. the Sensu Go Workshop environment and lessons
    GitHub - sensu/sensu-go-workshop: Sensu Go 6 Monitoring as Code workshop.
    I’m not sure we’ve gotten to the feature lessons you are specifically looking for but the intent is this docker based environment gives you something to play with (including a mattermost service container so you can play with chat alerting workflows) and just focus on the sensu operator learning.
    We intended to do live workshops in sort of regional user meetups as a way to play test this concept and get feedback…but covid blew those plans up.

But for the basics the existing lesson plans should provide reasonable examples. We just haven’t gotten to lesson for proxy request yet.

But for anyone else reading along who wants to help with this effort, we’re happy to get feedback in to form of github issues on the exiting content and overjoyed to see a PR roll in with new lesson content.

  1. GitHub - sensu/catalog: Monitoring as code for Sensu Go. "There's a template for that!"
    Another work in progress, the Sensu catalog is meant to provide reusable workload resource configuration examples as a starting point for operators that you can quickly edit to customize for your environment.