### Install Network Checker Source: https://oack.io/llms-full.txt Methods to install the Oack network checker agent on supported systems using Homebrew, shell scripts, or Docker containers. ```bash brew tap oack-io/tap brew install network-tester ``` ```bash curl -sSfL "https://raw.githubusercontent.com/oack-io/network-tester/refs/heads/main/install-network-tester.sh" | bash ``` ```docker docker pull oackio/network-tester:latest mkdir -p $HOME/.net-checker-data docker run --rm \ --cap-add NET_RAW \ -v $HOME/.net-checker-data:/data \ oackio/network-tester:latest \ --token-db /data/tokens.db --mode shared ``` -------------------------------- ### Manage Oack CLI (oackctl) Source: https://oack.io/llms-full.txt Commands for installing, authenticating, and configuring the oackctl CLI tool for managing the monitoring platform. ```bash oackctl login ``` ```bash export TT_TOKEN= ``` ```bash brew tap oack-io/tap brew install oackctl ``` ```bash curl -sSfL "https://raw.githubusercontent.com/oack-io/oackctl/refs/heads/main/install-oackctl.sh" | bash ``` -------------------------------- ### GET /api/v1/monitors/{id}/metrics Source: https://oack.io/llms-full.txt Retrieves performance metrics for a specific monitor, useful for investigating downtime or latency issues. ```APIDOC ## GET /api/v1/monitors/{id}/metrics ### Description Fetches historical performance metrics for a specific monitor. Requires team-level member access. ### Method GET ### Endpoint /api/v1/monitors/{id}/metrics ### Parameters #### Path Parameters - **id** (string) - Required - The unique identifier of the monitor. #### Query Parameters - **team** (string) - Required - The ID of the team owning the monitor. ### Response #### Success Response (200) - **data** (array) - List of metric data points. #### Response Example { "data": [ {"timestamp": "2023-10-27T10:00:00Z", "latency": 120, "status": "up"} ] } ``` -------------------------------- ### Create Monitor and Alert Channel Workflow (Bash) Source: https://oack.io/llms-full.txt This workflow demonstrates how to create a monitor, set up an alert channel (Slack), and associate the alert channel with the monitor using the oackctl CLI. It involves fetching team and monitor IDs, creating resources, and linking them. ```bash TEAM=$(oackctl teams list --json | jq -r '.[0].id') oackctl monitors create --team $TEAM \ --name "Production API" \ --url https://api.example.com/health \ --interval 60000 --failure-threshold 3 CH=$(oackctl alert-channels create --team $TEAM \ --type slack --name "Ops Slack" \ --config '{"webhook_url":"https://hooks.slack.com/..."}' --json | jq -r '.id') MON=$(oackctl monitors list --team $TEAM --json | jq -r '.[0].id') oackctl monitor-channels add $CH --team $TEAM --monitor $MON ``` -------------------------------- ### Investigate Monitor Downtime Workflow (Bash) Source: https://oack.io/llms-full.txt This workflow outlines steps to investigate a monitor's downtime using the oackctl CLI. It includes fetching monitor metrics, listing probes, retrieving probe details, and checking the timeline and alerts associated with the monitor. ```bash oackctl monitors metrics $MON --team $TEAM oackctl probes list --team $TEAM --monitor $MON --limit 10 PROBE=$(oackctl probes list --team $TEAM --monitor $MON --limit 1 --json | jq -r '.[0].id') oackctl probes details $PROBE --team $TEAM --monitor $MON oackctl timeline list --team $TEAM --monitor $MON oackctl alerts list --team $TEAM --monitor $MON ``` -------------------------------- ### Configure MCP for AI Agents Source: https://oack.io/llms-full.txt Configuration snippet for integrating Oack as a Model Context Protocol server within Claude Code, enabling AI-assisted troubleshooting. ```json { "mcpServers": { "oack": { "type": "http", "url": "https://api.oack.io/mcp/" } } } ``` -------------------------------- ### POST /api/v1/monitors Source: https://oack.io/llms-full.txt Creates a new monitor for a specific team. Requires team-level administrative permissions. ```APIDOC ## POST /api/v1/monitors ### Description Creates a new monitoring resource within a specified team context. Used to track uptime and performance of external URLs. ### Method POST ### Endpoint /api/v1/monitors ### Parameters #### Query Parameters - **team** (string) - Required - The ID of the team to associate the monitor with. #### Request Body - **name** (string) - Required - Name of the monitor. - **url** (string) - Required - The URL to monitor. - **interval** (integer) - Required - Check frequency in milliseconds. - **failure-threshold** (integer) - Optional - Number of failures before triggering an alert. ### Request Example { "name": "Production API", "url": "https://api.example.com/health", "interval": 60000, "failure-threshold": 3 } ### Response #### Success Response (201) - **id** (string) - The unique identifier of the created monitor. #### Response Example { "id": "mon_123456789" } ``` === COMPLETE CONTENT === This response contains all available snippets from this library. No additional content exists. Do not make further requests.