What is kwatch?
kwatch is an open-source project that started late in 2021.
It aims to help you monitor all changes in your Kubernetes(K8s) cluster,
detect crashes in your running apps, and publish notifications to your favorite channels (Slack, Discord, etc.) in real-time.
In this tutorial, I will help you setup and deploy kwatch on your Kubernetes cluster.
Plus, integrate with Slack to get notified on a channel when there is a crash in your apps.
Configure kwatch with Slack
First of all, we need to get the webhook URL of the channel you want the notification to be received on it.
If you know how to generate the webhook URL you can escape this part and go to the configuration section.
Step 1: create a new slack channel (if you don't have one already)
Step 2: Go to https://api.slack.com/apps and create an app from scratch and connect it with your workplace
Step 3: Create an incoming webhook and activate it
Step 4: Connect it to you channel
Finally we have the webhook URL for the channel!
Step 5: Get Configuration
Get the configuration template
curl -L https://raw.githubusercontent.com/abahmed/kwatch/v0.3.0/deploy/config.yaml -o config.yaml
Step 6: Edit config.yaml with the corresponding configs
apiVersion: v1
kind: Namespace
metadata:
name: kwatch
---
apiVersion: v1
kind: ConfigMap
metadata:
name: kwatch
namespace: kwatch
data:
config.yaml: |
alert:
slack:
webhook: WEBHOOK_URL
Step 7: Apply Configuration
kubectl apply -f config.yaml
Deploy kwatch
Deploy kwatch on your cluster with one command
kubectl apply -f https://raw.githubusercontent.com/abahmed/kwatch/v0.3.0/deploy/deploy.yaml
After deploying you will get notified on the channel that kwatch has started successfully. Now, kwatch is monitoring your apps!
Here is an example of kwatch messages when a crash is detected.
You can find more documentation about kwatch Here.
If you like kwatch, give it a star on GitHub!
We are happy to hear feedback from you and if you have any request, or suggestion don't hesitate to ping us on our channels (Discord, GitHub)
Top comments (0)