In today’s time, our customers expect that the applications must be up-to-date and always available whenever they click. However, there are plenty of challenges an organization faces when migrating to the cloud. Thus, to meet client demands and avoid downtime, your teams must implement ideas that deliver delightful user experiences to the customers.
No doubt, the cloud offers multiple benefits, but with the rise of microservices, IoT devices, containers, and multi-cloud environments, it has become difficult to get complete visibility into the infrastructure and ensure no faults.
Thus, to reduce downtime, diagnose and fix problems in real-time, effective monitoring of multi-cloud infrastructure and applications is crucial for your success.
The Sensu Observability Pipeline is a perfect solution as it provides monitor-as-code, alerting, and automatic remediation for cloud-native applications. It helps keep track of the health of servers, networks, applications, and other IT infrastructure. Additionally, it helps organizations in eliminating data silos and filling gaps in observability.
Here, we will discuss the Sensu Observability Pipeline in detail. Further, we will highlight some of its features, benefits, use cases, and pricing plan, thus making it easier for you to make the right call for your business.
What is Sensu?
Sensu is a leading monitoring solution designed for multi-cloud platforms. It is a turn-key observability pipeline that provides a flexible automation platform for DevOps and SRE teams to collect, filter, and transform monitoring events.
Organizations can easily monitor the health of servers, networks, applications, and other IT infrastructure using the trusted solution. It has a simple and intuitive UI that makes it easy for administrators to set up and monitor their systems. You can install the monitoring solution on any Linux distribution or virtual machine.
Sensu is basically used to run automated diagnosis, alert and incident management, and even automated remediation for cloud platforms. It allows administrators to install plugins, collect, filter, store, self-heal, eliminate data silos and fill gaps in observability.
The Sensu agent is lightweight, written in the Go programming language, and runs on many operating systems. The agent allows administrators to define checks they want to run against their infrastructures, such as CPU usage, disk space, or network bandwidth. It further approves the DevOps and SRE teams to automatically run checks and generate a report for the same. Some high-profile companies, such as TD Bank, Microsoft, Uber, Box.com, Sony, Activision, etc., use Sensu to monitor their infrastructure and applications.
Sensu is highly portable and faster to deploy. Another reason it is considered to be an industry-leading monitoring solution is it offers full visibility from bare metal to Kubernetes. Also, it provides free access to 100 nodes maximum and unlimited sites.
With Sensu Observability Pipeline, you can also reuse existing tools, like Nagios, Prometheus, StatsD, and Telegraf. The trusted solution allows organizations to monitor any app or service (Redis, GRPG, MySQL, Nginx, etc.) using existing tools on any cloud. Let us have a look at some of its features and benefits.
Key Features
The Sensu Observability Pipeline runs automated diagnosis and uses the best monitoring tools to fill gaps in observability. Apart from this, it supports many features that help preserve business continuity and deliver an API-rich observability pipeline for DevOps. Here are some of the features of the Sensu Observability Pipeline:
- Runs Health Checks and Collects Logs Sensu allows the execution of custom scripts and constantly monitors the health of servers, networks, applications, and other IT infrastructure. Also, it helps collect system and application metrics and logs, which are later sent to the database of your choice for unified business intelligence.
- Monitoring as code Apart from the monitoring plugins and integration support, Sensu also provides pre-configured templates that aid in managing monitoring-as-code workflows without any coding. The third-party integrations are backed by easy-to-use and control declarative configuration templates. As a result, the teams can easily review, control, and share the reports with each other.
- Manages Complex Observability Workflows A centralized management interface makes it easier for users to monitor and manage infrastructure complexities. The way Kubernetes serves as a control plane for container orchestration, similarly, the sensu Observability Pipeline enables teams to automatically manage some of the highly complex observability workflows.
- Alert and incident management The monitoring solution allows users to customize alert policies and send immediate alerts through email, SMS, Slack, and other sources. Also, you can create and fix incidents in ServiceNow, JIRA, and PagerDuty with Sensu. Additionally, using this feature, you can filter events, improve contact routing, and reduce noise generated from constant notifications by recurring events.
- Supports Auto-remediation On detecting problems, Sensu immediately triggers the remediation actions with the help of some third-party APIs. It also supports a self-heal mechanism that automatically restarts the service or executes custom scripts for faster recovery.
- Managing Endpoints Sensu provides real-time visibility and enables agents to discover and register infrastructure components, virtual machines, containers, and public cloud compute instances automatically. Also, the endpoint management feature ensures that you get fewer alerts for operations that no longer exist or function.
Advantages of Sensu
To monitor infrastructure efficiently, many companies use Sensu – an open-source monitoring solution that briefs about the application’s health and monitors servers to deliver value to their customers faster. The Observability Pipeline has various benefits that will help your organization to meet its business requirements, have a look.
- Best for Cloud Platforms The rise of microservices, IoT devices, containers, and multi-cloud environments has made it difficult for organizations to gain full visibility into the infrastructure. But, with Sensu, you can easily monitor dynamic infrastructure, register and deregister new endpoints, and reduce OpEx. It helps automate tasks and protects operators from alert fatigue. Further, it helps secure your infrastructure and enables agents to collect data in a variety of ways.
- Monitors Automation Sensu supports a service-based declarative configuration model that reduces risks related to monitoring configuration management. It helps organizational teams to automate monitoring configuration changes and deliver easy-to-tune monitoring and reporting benefits.
- Allows users to reuse existing plugins Sensu is one of the best alternate monitoring solutions to Nagios, Zabbix, OpsView, and Icinga because it allows teams to reuse its existing plugins and instrumentation. This feature adds a new life to the existing instrumentation, which further aids in unblocking several digital transformation initiatives.
- Business Continuity Many organizations use Sensu for monitoring multi-cloud environments and infrastructure. It also supports existing and new data sources such as Prometheus. It ensures business continues to perform well while transitioning to the Cloud.
- Offers Unlimited Scalability Sensu’s high-performance enterprise datastore enables organizations to monitor a minimum of 10 to a maximum of 100 nodes from a single cluster. Using the Sensu federation, you can get complete visibility into the globally distributed infrastructure.
- Offers IoT & Remote Site Monitoring Sensu is a lightweight agent with push architecture that also helps monitor the IoT platforms and connected devices. It has minimal configuration requirements and supports integration with IoT gateways to track device health.
Sensu Integrations
Sensu supports 250+ integrations with existing platforms and tools used for improving observability and eliminating data silos. This feature enables DevOps and SRE teams to collect data from any source or cloud platforms (Kubernetes, AWS, GCP, etc.) and share it with the existing tools or database of your choice.
It also supports data collection from web platforms and third-party monitoring tools. Sensu can also be used for automation purposes such as running scripts when certain events are triggered or sending notifications when thresholds are exceeded. Additionally, it provides remediation with existing configuration management tools.
- Cloud platforms: Kubernetes, Red Hat OpenShift, AWS, GCP, OpenStack, Docker, and Azure.
- Data platforms: Share observability data with Splunk, InfluxDB, Elasticsearch, MongoDB, Postgres, MySQL, etc.
- Web platforms: Microsoft IIS, Memcache, Tomcat, NGINX, Apache, etc.
- Automation platforms: Allows monitoring configuration management tools, such as Terraform, Helm, Pulumi, Puppet, etc.
- Incident management: Create and resolve incidents in ServiceNow, VictorOps, JIRA, etc.
- Third-party monitoring tools: Nagios, StatsD, SNMP, Prometheus, etc.
Use Cases
Sensu has the ability to monitor infrastructure and applications, and streamline product operations, i.e., building new features. It is a leading observability platform that helps resolve ephemeral compute issues and efficiently handles the challenging nature of container orchestration.
A few beginners panic as to what steps they should take to reduce false-positive infrastructure monitoring alerts related to cloud provisioning events while collecting performance data using the same pipeline. But, it all becomes easy with its simple and intuitive UI.
The excellent features of the Sensu monitoring solution allow users to collect and analyze performance data for applications and manage other ephemeral compute issues simultaneously. Further, users can easily onboard new teams and share reports to the new environment using the pipeline.
The monitoring solution was designed in a manner that users could also resolve problems without starting over. It is an indispensable tool that is easy to use and share. It is a highly scalable monitoring solution and a great alternative to Nagios.
Sensu allows users to collect and monitor metrics or events across Azure, OpenStack, AWS, Google Cloud Platform, VMware, and other cloud environments. Also, organizations can collect labels and metrics from Docker, Mesos, Kubernetes, and Cloud Foundry.
Sensu Pricing
Let us have a look at the pricing plans of Sensu Products:
Sensu Go Pricing Plan
Sensu Go is the latest version of Sensu that provides a maximum of 100 nodes free of charge. Its pricing plan is best suitable for small-medium-sized businesses and enterprise organizations. The free version offers unlimited evaluation and access to 1 site with commercial features.
The Pro Version Pricing Plan starts at $3/mo with access to a minimum of 100 and a maximum of 3000 nodes. Users get access to a minimum of one site along with commercial features under this pricing plan. Additionally, it includes commercial support and a 6-hour response time SLA. You can also try the 14-day trial to check if it meets your requirement.
The Sensu Go Enterprise Plan was designed for large teams who want to monitor and manage mission-critical systems. The pricing plan for the Enterprise version starts at $5/mo with access to a minimum of 300 and maximum unlimited nodes. Also, you can handle unlimited sites under this package with commercial features and support. It offers a 3-hour response time SLA and a 14-day trial option.
Sensu Plus Pricing Plan
Sensu Plus delivers a Monitoring as Code solution with the Sumo Logic Continuous Intelligence™️ platform. It is an integrated solution that helps extract insights from Sensu’s observability pipeline data for Sensu users.
The free version allows a maximum of 100 nodes and access to monitoring a single site with commercial features. The available DPM limit is 30 dpm/node. Additionally, the metric retention of 400 days and event retention of 7 days is available under the package.
The Sensu Plus Pro Version is best suitable for enterprise product teams and small businesses. The pricing plan starts at $5/mo with access to a minimum of 100 and a maximum of 3000 nodes. Also, you can monitor a minimum of one site under this package. It includes commercial features, support, and a 6-hour response time SLA. The available DPM limit is 300 dpm/node. Additionally, the metric and event retention is 400 days for Pro users. You can try the 14-day trial to check if the version fulfills your requirement.
The Sensu Plus Enterprise Plan is ideal for organizations with large teams managing mission-critical systems. The pricing plan starts at $8/mo with access to a minimum of 300 and maximum unlimited nodes. Under this package, users can access unlimited sites with commercial features, support, and a 3-hour response time SLA. Also, the metric retention is 400 days, and event retention is 1095 days for Enterprise users. Try the 14-day trial and upgrade to the paid version if the features meet your requirement.
Quick Points
- You can purchase additional nodes (agent-managed entities) from the self-service portal in 10-unit bundles. If you are trying to purchase additional nodes from another source, you need to purchase units of 100 nodes.
- Unlimited maximum nodes for the enterprise plan.
- Sites can include one or more backends.
- If you want proxy entities or endpoints without agents, get in touch with the sales team.
Install and Configure Sensu Backend and Agent
In this section, we will get our hands dirty by setting up the Sensu backend and Agent on Ubuntu and Debian-based operating systems, then monitor Agent from the Sensu dashboard.
1. Install Sensu Backend
By default, the Sensu backend package is not included on the Ubuntu/Debian default repository, so you will need to add it to your system. First, install the required dependencies using the following command:
apt install curl gnupg2 wget -y
Next, add the Sensu backend repository by running the following script:
curl -s https://packagecloud.io/install/repositories/sensu/stable/script.deb.sh | bash
Once the repository is updated, you can install the Sensu backend by running the following command:
apt install sensu-go-backend -y
After the installation, you will need to download the Sensu configuration file from the Sensu official website and copy it to the /etc/sensu directory.
curl -L https://docs.sensu.io./sensu-go/latest/files/backend.yml -o backend.yml mv backend.yml /etc/sensu/backend.yml
Next, start and enable the Sensu backend service using the following command:
systemctl start sensu-backend systemctl enable sensu-backend
To check the Sensu service status, run the following command:
systemctl status sensu-backend
You will get the Sensu status in the following output:
● sensu-backend.service - The Sensu Backend service. Loaded: loaded (/lib/systemd/system/sensu-backend.service; disabled; vendor preset: enabled) Active: active (running) since Fri 2022-08-26 02:21:16 UTC; 6s ago Main PID: 45474 (sensu-backend) Tasks: 6 (limit: 2347) Memory: 26.7M CGroup: /system.slice/sensu-backend.service └─45474 /usr/sbin/sensu-backend start -c /etc/sensu/backend.yml Aug 26 02:21:21 server sensu-backend[45474]: {"component":"etcd","level":"debug","caller":"etcdserver/server.go:2122","msg":"Applying entries> Aug 26 02:21:21 server sensu-backend[45474]: {"component":"etcd","level":"debug","caller":"etcdserver/server.go:2125","msg":"Applying entry",> Aug 26 02:21:21 server sensu-backend[45474]: {"component":"etcd","level":"debug","caller":"etcdserver/server.go:2184","msg":"apply entry norm> Aug 26 02:21:21 server sensu-backend[45474]: {"component":"etcd","level":"debug","caller":"etcdserver/server.go:2211","msg":"applyEntryNormal> Aug 26 02:21:21 server sensu-backend[45474]: {"component":"etcd","level":"debug","caller":"v3rpc/interceptor.go:182","msg":"request stats","s> Aug 26 02:21:21 server sensu-backend[45474]: {"component":"etcd","level":"debug","caller":"etcdserver/server.go:2122","msg":"Applying entries> Aug 26 02:21:21 server sensu-backend[45474]: {"component":"etcd","level":"debug","caller":"etcdserver/server.go:2125","msg":"Applying entry",> Aug 26 02:21:21 server sensu-backend[45474]: {"component":"etcd","level":"debug","caller":"etcdserver/server.go:2184","msg":"apply entry norm> Aug 26 02:21:21 server sensu-backend[45474]: {"component":"etcd","level":"debug","caller":"etcdserver/server.go:2211","msg":"applyEntryNormal> Aug 26 02:21:21 server sensu-backend[45474]: {"component":"etcd","level":"debug","caller":"v3rpc/interceptor.go:182","msg":"request stats","s>
You can also verify the Sensu listening ports using the following command:
ss -antpl | grep sensu
You should see all listening ports in the following output:
LISTEN 0 4096 127.0.0.1:2379 0.0.0.0:* users:(("sensu-backend",pid=58937,fd=8)) LISTEN 0 4096 127.0.0.1:2380 0.0.0.0:* users:(("sensu-backend",pid=58937,fd=7)) LISTEN 0 4096 *:3000 *:* users:(("sensu-backend",pid=58937,fd=20)) LISTEN 0 4096 *:8080 *:* users:(("sensu-backend",pid=58937,fd=18)) LISTEN 0 4096 *:8081 *:* users:(("sensu-backend",pid=58937,fd=19))
2. Set Sensu Admin Password
You will also need to set the admin user and password to access the Sensu Backend dashboard. You can set it by running the following command:
sensu-backend init --interactive
Answer all the questions as shown below:
? Cluster Admin Username: hiteshjethva ? Cluster Admin Password: ********** ? Retype Cluster Admin Password: ********** ? Cluster Admin API Key: {"component":"cmd","level":"info","msg":"attempting to connect to etcd server: http://localhost:2379","time":"2022-08-26T02:36:34Z"} {"component":"backend.seeds","level":"info","msg":"seeding etcd store with initial data","time":"2022-08-26T02:36:34Z"} {"component":"backend.seeds","level":"warning","msg":"default namespace already exists","time":"2022-08-26T02:36:34Z"} {"component":"store","level":"warning","msg":"migrating etcd database to a new version","time":"2022-08-26T02:36:34Z"} {"component":"store","database_version":1,"level":"info","msg":"successfully upgraded database","time":"2022-08-26T02:36:34Z"} {"component":"store","database_version":2,"level":"info","msg":"successfully upgraded database","time":"2022-08-26T02:36:34Z"} {"component":"store","level":"warning","msg":"migrating enterprise etcd database to a new version","time":"2022-08-26T02:36:34Z"} {"component":"store","database_version":1,"level":"info","msg":"successfully upgraded database","time":"2022-08-26T02:36:34Z"} {"component":"store","database_version":2,"level":"info","msg":"successfully upgraded database","time":"2022-08-26T02:36:34Z"}
3. Access Sensu Dashboard
You can now access the Sensu Backend dashboard using the URL http://your-server-ip:3000 in your web browser. You should see the Sensu login page:
Provide your admin username, password and click on the SIGN IN button. You should see the Sensu dashboard on the following page:
4. Install Sensuctl CLI Tool
Sensu also provides a Sensuctl CLI tool that allows you to manage and monitor the Sensu via a command-line interface. You can install it by running the following command:
apt-get install sensu-go-cli -y
Once the Sensuctl is installed, configure the Sensuctl using the following command:
sensuctl configure
You will be asked to provide Sensu backend URL, username, and password to configure it:
? Authentication method: username/password ? Sensu Backend URL: http://127.0.0.1:8080 ? Namespace: default ? Preferred output format: tabular ? Username: hiteshjethva ? Password: *************
5. Install and Configure Sensu Agent
Next, you will need to install the Sensu agent on every remote Linux system that you want to monitor from the Sensu dashboard. First, add the Sensu repository with the following command:
curl -s https://packagecloud.io/install/repositories/sensu/stable/script.deb.sh | bash
Next, install the Sensu agent package with the following command:
apt install sensu-go-agent -y
Once the Sensu agent package is installed, download the Sensu agent configuration file to the /etc/sensu directory:
curl -L https://docs.sensu.io/sensu-go/latest/files/agent.yml -o /etc/sensu/agent.yml
Next, edit the Sensu agent configuration file and define your Sensu backend URL:
nano /etc/sensu/agent.yml
Change the following lines:
name: "sensu-client" namespace: "default" backend-url: - "ws://sensu-server-ip:8081"
Save and close the file, then restart the Sensu agent service to apply the changes:
systemctl restart sensu-agent
You can now check the status of the Sensu agent service with the following command:
systemctl status sensu-agent
You will get the following output:
● sensu-agent.service - The Sensu Agent process. Loaded: loaded (/lib/systemd/system/sensu-agent.service; disabled; vendor preset: enabled) Active: active (running) since Fri 2022-08-26 02:41:45 UTC; 6s ago Main PID: 45040 (sensu-agent) Tasks: 7 (limit: 2347) Memory: 7.4M CGroup: /system.slice/sensu-agent.service └─45040 /usr/sbin/sensu-agent start -c /etc/sensu/agent.yml Aug 26 02:41:45 client sensu-agent[45040]: {"component":"agent","level":"info","msg":"starting api on address: 127.0.0.1:3031","time":"2022-0> Aug 26 02:41:45 client sensu-agent[45040]: {"component":"agent","level":"info","msg":"connecting to backend URL \"ws://127.0.0.1:8081\"","tim> Aug 26 02:41:45 client sensu-agent[45040]: {"component":"agent","header":"Accept: application/octet-stream","level":"debug","msg":"setting he> Aug 26 02:41:45 client sensu-agent[45040]: {"component":"agent","error":"dial tcp 127.0.0.1:8081: connect: connection refused","level":"error> Aug 26 02:41:46 client sensu-agent[45040]: {"component":"agent","level":"info","msg":"connecting to backend URL \"ws://127.0.0.1:8081\"","tim> Aug 26 02:41:46 client sensu-agent[45040]: {"component":"agent","header":"Accept: application/octet-stream","level":"debug","msg":"setting he> Aug 26 02:41:46 client sensu-agent[45040]: {"component":"agent","error":"dial tcp 127.0.0.1:8081: connect: connection refused","level":"error> Aug 26 02:41:49 client sensu-agent[45040]: {"component":"agent","level":"info","msg":"connecting to backend URL \"ws://127.0.0.1:8081\"","tim> Aug 26 02:41:49 client sensu-agent[45040]: {"component":"agent","header":"Accept: application/octet-stream","level":"debug","msg":"setting he
6. Verify Sensu Agent on Sensu Dashboard
You can now refresh the Sensu Backend dashboard page to verify the Sensu agent. You should see your added Sensu agent on the following page:
7. Configure Sensu Agent Entity Subscription
Next, you will need to configure the Sensu agent entity subscription to monitor it from the Sensu backend dashboard.
On the Sensu backend server, run the following command to display the ID of the Sensu agent:
sensuctl entity list/pre> You will get it in the following output:
ID Class OS Subscriptions Last Seen ─────────────── ─────── ─────── ───────────────────── ──────────────────────────────── sensu-client agent linux entity:sensu-client 2022-08-26 03:07:52 +0000 UTC
Next, you will need to update the subscriptions for the above-listed Agent using the following command.
sensuctl entity update sensu-client
You will get the following output:
? Entity Class: Agent ? Subscriptions: entity:sensu-client Updated
8. Install Sensu Check Plugins
Sensu provides multiple plugins that are used to monitor system metrics using Sensu. To install the Sensu CPU usage, Disk usage, and Memory usage check plugins, run the following commands on the Sensu backend:
sensuctl asset add sensu/check-cpu-usage -r check-cpu-usage sensuctl asset add sensu/check-memory-usage -r check-memory-usage sensuctl asset add sensu/check-disk-usage -r check-disk-usage
You can now list all installed plugins using the following command:
sensuctl asset list
You will get the following output:
Name URL Hash ───────────────────── ──────────────────────────────────────────────────────────────────────────── ────────── check-cpu-usage //assets.bonsai.sensu.io/.../check-cpu-usage_0.2.2_windows_amd64.tar.gz 900cfdf check-cpu-usage //assets.bonsai.sensu.io/.../check-cpu-usage_0.2.2_darwin_amd64.tar.gz db81ee7 check-cpu-usage //assets.bonsai.sensu.io/.../check-cpu-usage_0.2.2_linux_armv7.tar.gz 400aacc check-cpu-usage //assets.bonsai.sensu.io/.../check-cpu-usage_0.2.2_linux_arm64.tar.gz bef7802 check-cpu-usage //assets.bonsai.sensu.io/.../check-cpu-usage_0.2.2_linux_386.tar.gz a2dcb53 check-cpu-usage //assets.bonsai.sensu.io/.../check-cpu-usage_0.2.2_linux_amd64.tar.gz 2453973 check-disk-usage //assets.bonsai.sensu.io/.../check-disk-usage_0.7.0_windows_amd64.tar.gz e28c0da check-disk-usage //assets.bonsai.sensu.io/.../check-disk-usage_0.7.0_darwin_amd64.tar.gz 2b3a8f1 check-disk-usage //assets.bonsai.sensu.io/.../check-disk-usage_0.7.0_linux_armv7.tar.gz 0c2c5ce check-disk-usage //assets.bonsai.sensu.io/.../check-disk-usage_0.7.0_linux_arm64.tar.gz f5234e9 check-disk-usage //assets.bonsai.sensu.io/.../check-disk-usage_0.7.0_linux_386.tar.gz 102f2ca check-disk-usage //assets.bonsai.sensu.io/.../check-disk-usage_0.7.0_linux_amd64.tar.gz 0b76e77 check-memory-usage //assets.bonsai.sensu.io/.../check-memory-usage_0.2.2_windows_amd64.tar.gz 90a997a check-memory-usage //assets.bonsai.sensu.io/.../check-memory-usage_0.2.2_darwin_amd64.tar.gz 57ebebe check-memory-usage //assets.bonsai.sensu.io/.../check-memory-usage_0.2.2_linux_armv7.tar.gz 6f7d0d2 check-memory-usage //assets.bonsai.sensu.io/.../check-memory-usage_0.2.2_linux_arm64.tar.gz 94a41f3 check-memory-usage //assets.bonsai.sensu.io/.../check-memory-usage_0.2.2_linux_386.tar.gz 125f9c1 check-memory-usage //assets.bonsai.sensu.io/.../check-memory-usage_0.2.2_linux_amd64.tar.gz 663985d
Next, you will need to create the monitoring command checks for each asset. You can create them with the following commands:
sensuctl check create check_cpu -c 'check-cpu-usage -w 80 -c 90' -i 300 -s entity:sensu-client -r check-cpu-usage sensuctl check create check_disk -c 'check-disk-usage -w 75 -c 85' -i 300 -s entity:sensu-client -r check-disk-usage sensuctl check create check_mem -c 'check-memory-usage -w 75 -c 90' -i 300 -s entity:sensu-client -r check-memory-usage
You can now verify all checklists using the following command:
sensuctl checklist
You will get the following output:
Name Command Interval Cron Timeout TTL Subscriptions Handlers Assets Hooks Publish? Stdin? Metric Format Metric Handlers ───────────── ──────────────────────────────── ────────── ────── ───────── ───── ───────────────────── ────────── ──────────────────── ─────── ────────── ──────── ─────────────── ────────────────── check_cpu check-cpu-usage -w 80 -c 90 300 0 0 linux check-cpu-usage true false check_disk check-disk-usage -w 75 -c 85 300 0 0 entity:sensu-client check-disk-usage true false check_mem check-memory-usage -w 75 -c 90 300 0 0 entity:sensu-client check-memory-usage true false check_swap check-swap-usage -w 75 -c 90 300 0 0 entity:sensu-client check-memory-usage true false
9. Verify Sensu Agent Metrics Monitoring
At this point, Sensu agent metrics should now be available on the Sensu backend. You can now verify them by running the following command:
sensuctl event list --all-namespaces
You should see all metrics in the following output:
Entity Check Output Status Silenced Timestamp UUID ─────────────── ──────────── ──────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────────── ──────── ────────── ─────────────────────────────── ─────────────────────────────────────── sensu-client check_disk check-disk-usage OK: / 8.06% - Total: 53 GB, Used: 4.1 GB, Free: 46 GB 0 false 2022-08-26 03:18:56 +0000 UTC f0d47c2d-4cf5-4940-8fb0-4004cb6bc3cb sensu-client check_mem check-memory-usage OK: 5.86% memory usage | mem_total=2079633408, mem_available=1762848768, mem_used=121765888, mem_free=147976192 0 false 2022-08-26 03:19:07 +0000 UTC 61348590-b645-4cb3-80d3-70f10e68dbd7 sensu-client check_swap check-swap-usage OK: 0.00% swap usage | swap_total=0, swap_free=0, swap_used=0 0 false 2022-08-26 03:20:06 +0000 UTC 59ade8b5-b4fc-4f79-aeee-4770666f042f
You can also go to the Sensu dashboard and click on the Entity in the left pane. You should see your Agent on the following page:
Click on the Agent. You should see the Agent metric statistics on the following screen:
Conclusion
Sensu is an operational real-time infrastructure and application monitoring platform designed for dynamic and large-scale IT environments. It allows DevOps and SRE teams to monitor servers, services, application health, and KPIs faster. Not only is Sensu Go scalable, but it also integrates with other DevOps monitoring solutions such as Splunk, PageDuty, ServiceNow, and Elasticsearch.
Most organizations use Sensu for running automated diagnosis, alert and incident management, and even automated remediation for cloud platforms. It allows DevOps and SRE teams to automatically run checks and create reports for the same.
Sensu Monitoring Event Pipeline empowers enterprises to automate their monitoring workflows and achieve deeper visibility of their multi-cloud environments. As an agent-based infrastructure monitoring tool, Sensu Go is designed to provide administrators with complete visibility of their servers, containers, applications, clouds, and more.
It has various features that help manage some of the highly complex observability workflows, collect system and application metrics and logs, customize alert policies, etc. It also supports 250+ integrations with existing platforms and tools.
To meet client demands and avoid downtime, it is essential for organizations to invest in a monitoring solution that efficiently handles the challenging nature of container orchestration and manages other ephemeral compute issues.
If you are looking for an alternative to Nagios, Zabbix, OpsView, and Icinga, we recommend using Sensu Observability Pipeline for it also allows organizations to reuse their existing plugins and instrumentation, which further aids in unblocking several digital transformation initiatives.
We have also listed some of its benefits, use cases, and pricing plans – free and paid. Compare the pricing plans and choose the one that fits your business requirement.