Watchlog DocsWatchlog Docs
Home
Get Started
Home
Get Started
  • Watchlog
    • Get Started
    • Custom Events
    • APM
    • Kubernetes Cluster Monitoring

Get Started

Welcome to Watchlog! Follow these steps to sign up, configure, and install the Agent on your environment:

1. Sign up for an account

Go to watchlog.io and click Sign Up. Fill in your details and verify your email to create your Watchlog account.

2. Copy API Key and Server URL

After logging in, navigate to Hosts and click an existing host or create a new one. Copy your API Key and note your Server URL from the host details page.

3. Install the Watchlog Agent

Ubuntu

sudo apiKey="<API-Key>" server="<Server>" bash -c "$(curl -L https://watchlog.io/ubuntu/watchlog-script.sh)"

Windows

$wl_apiKey="<API-Key>"
$wl_server="<Server>"
iwr https://watchlog.io/windows/install-watchlog.ps1 -OutFile "$env:TEMP\install-watchlog.ps1"
powershell -ExecutionPolicy Bypass -File "$env:TEMP\install-watchlog.ps1" -apiKey $wl_apiKey -server $wl_server

Docker

First, create a Docker volume for persistent configuration:

docker volume create watchlog-agent-config

Then start the Agent container:

docker run -d \
  --name watchlog-agent \
  -p 3774:3774 \
  -v watchlog-agent-config:/app/app/config \
  -e WATCHLOG_APIKEY="<API-Key>" \
  -e WATCHLOG_SERVER="<Server>" \
  -e MONITOR_REDIS=false \
  -e REDIS_HOST="127.0.0.1" \
  -e REDIS_PORT="6379" \
  -e REDIS_PASSWORD="" \
  -e MONITOR_MONGODB=false \
  -e MONGODB_HOST="127.0.0.1" \
  -e MONGODB_PORT="27017" \
  -e MONGODB_USERNAME="" \
  -e MONGODB_PASSWORD="" \
  -e MONITOR_NGINX=false \
  -e NGINX_ACCESS_LOG="/var/log/nginx/access.log" \
  -e MONITOR_MYSQL=false \
  -e MYSQL_HOST="127.0.0.1" \
  -e MYSQL_PORT="3306" \
  -e MYSQL_USERNAME="root" \
  -e MYSQL_PASSWORD="" \
  -e MYSQL_DATABASES="" \
  -e MONITOR_POSTGRESQL=false \
  -e POSTGRESQL_HOST="127.0.0.1" \
  -e POSTGRESQL_PORT="5432" \
  -e POSTGRESQL_USERNAME="" \
  -e POSTGRESQL_PASSWORD="" \
  -e POSTGRESQL_DATABASES="" \
  -e MONITOR_DOCKER=false \
  -e LOG_WATCHLIST_JSON='[]' \
  watchlog/agent:latest

Kubernetes

This agent will be deployed into the monitoring namespace.
Make sure the namespace exists by running:

kubectl create namespace monitoring

Save the following manifest as watchlog-node-agent.yaml, then apply it with:

To deploy as a DaemonSet, save this manifest as watchlog-node-agent.yaml and apply:

apiVersion: v1
kind: ServiceAccount
metadata:
  name: watchlog-node-agent
  namespace: monitoring
automountServiceAccountToken: true
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRole
metadata:
  name: watchlog-node-agent-role
rules:
  - apiGroups: [""]
    resources: ["nodes"]
    verbs: ["get"]
---
apiVersion: rbac.authorization.k8s.io/v1
kind: ClusterRoleBinding
metadata:
  name: watchlog-node-agent-binding
roleRef:
  apiGroup: rbac.authorization.k8s.io
  kind: ClusterRole
  name: watchlog-node-agent-role
subjects:
  - kind: ServiceAccount
    name: watchlog-node-agent
    namespace: monitoring
---
apiVersion: apps/v1
kind: DaemonSet
metadata:
  name: watchlog-node-agent
  namespace: monitoring
spec:
  selector:
    matchLabels:
      app: watchlog-node-agent
  template:
    metadata:
      labels:
        app: watchlog-node-agent
    spec:
      serviceAccountName: watchlog-node-agent
      hostNetwork: true
      dnsPolicy: ClusterFirstWithHostNet
      containers:
        - name: agent
          image: watchlog/watchlog-node-agent:latest
          imagePullPolicy: Always
          ports:
            - containerPort: 3774
              hostPort: 3774
          env:
            - name: WATCHLOG_APIKEY
              value: "<API-Key>"
            - name: WATCHLOG_SERVER
              value: "<Server>"
            # ... additional env vars as needed ...
      tolerations:
        - operator: Exists
      volumes:
        - name: docker-sock
          hostPath:
            path: /var/run/docker.sock

5. Verify Your Host Status

Return to the Hosts list. Within a minute, your host should appear Online with live metrics.

6. Explore Integrations & Alerts

Enable integrations like Nginx, MongoDB, Redis under Integrations, and set up thresholds in Alerts to get notified on critical events.


You’re all set! Navigate the sidebar for advanced guides on APM, Custom Dashboards, and more.

Last Updated:: 7/30/25, 8:18 PM
Contributors: mohammad
Next
Custom Events