Quick Start

Get up and running with Ops Ledger in minutes. This guide will walk you through the essential steps to start tracking your operations.

1. Create Your Account

Sign up for a free trial at opsledger.tech/signup. No credit card required.

2. Set Up Your First Project

// Navigate to Projects → New Project
{
  "name": "Production Infrastructure",
  "teams": ["DevOps", "SRE", "Platform"],
  "sla_targets": {
    "response_time": "15m",
    "resolution_time": "4h"
  }
}

3. Create Your First Ticket

Tickets are the fundamental unit of work in Ops Ledger. Create one through the dashboard or API.

POST /api/v1/tickets
{
  "title": "Database performance degradation",
  "priority": "high",
  "assigned_to": "team:sre",
  "sla_policy": "p1-critical"
}

Installation

Ops Ledger is available as a cloud-hosted SaaS platform or as a self-hosted solution for enterprise customers.

Cloud Hosted (Recommended)

Simply sign up and start using immediately. We handle all infrastructure, updates, and maintenance.

  • ✓ Instant setup, no installation required
  • ✓ Automatic updates and patches
  • ✓ 99.99% uptime SLA
  • ✓ Global CDN for fast access

Self-Hosted

For organizations requiring on-premises deployment:

# Using Docker
docker pull opsledger/platform:latest
docker run -d -p 8080:8080 \
  -e DB_HOST=your-db-host \
  -e REDIS_HOST=your-redis-host \
  opsledger/platform:latest

# Using Kubernetes
kubectl apply -f https://opsledger.tech/k8s/manifest.yaml

Configuration

Customize Ops Ledger to match your operational workflows and requirements.

Environment Variables

# Core Configuration
OPS_LEDGER_DB_URL=postgresql://user:pass@host:5432/opsledger
OPS_LEDGER_REDIS_URL=redis://host:6379
OPS_LEDGER_SECRET_KEY=your-secret-key

# Feature Flags
ENABLE_AI_INSIGHTS=true
ENABLE_SLACK_INTEGRATION=true
ENABLE_CUSTOM_WORKFLOWS=true

# Performance Tuning
WORKER_THREADS=4
CACHE_TTL=3600

Custom SLA Policies

Define service level agreements that match your business requirements:

{
  "sla_policies": [
    {
      "name": "p1-critical",
      "response_time": "15m",
      "resolution_time": "4h",
      "business_hours_only": false
    },
    {
      "name": "p2-high",
      "response_time": "1h",
      "resolution_time": "24h",
      "business_hours_only": true
    }
  ]
}

Working with Tickets

Tickets represent operational work items—incidents, requests, tasks, and more.

Ticket Lifecycle

States: Open → In Progress → Pending → Resolved → Closed

Creating Tickets

POST /api/v1/tickets
{
  "title": "API gateway returning 503 errors",
  "description": "Intermittent 503 errors on /api/v2/users",
  "priority": "critical",
  "type": "incident",
  "assigned_to": "team:platform",
  "tags": ["api", "gateway", "production"],
  "metadata": {
    "affected_users": 1250,
    "error_rate": "3.5%"
  }
}

Ticket Properties

  • Priority: critical, high, medium, low
  • Type: incident, request, task, change
  • Status: open, in_progress, pending, resolved, closed
  • SLA: Automatically calculated based on priority

Change Management

Track and approve all infrastructure and application changes with full audit trails.

Change Request Process

  1. Submit change request with details and impact analysis
  2. Technical review by subject matter experts
  3. Manager approval based on risk assessment
  4. Scheduled implementation with rollback plan
  5. Post-implementation review and closure

Creating a Change Request

POST /api/v1/changes
{
  "title": "Upgrade PostgreSQL to 15.2",
  "type": "standard",
  "risk_level": "medium",
  "implementation_date": "2024-01-15T02:00:00Z",
  "rollback_plan": "Restore from backup taken at 01:45",
  "affected_systems": ["database-prod-1", "database-prod-2"],
  "approval_required": ["manager", "dba"]
}

SLA/SLO Management

Define and track service level agreements (SLAs) and objectives (SLOs) with automated monitoring.

Understanding SLA vs SLO

SLA (Service Level Agreement): Contractual commitment to customers

SLO (Service Level Objective): Internal target to maintain buffer above SLA

Defining SLOs

{
  "slos": [
    {
      "name": "API Response Time",
      "metric": "http_request_duration_seconds",
      "target": "p95 < 200ms",
      "window": "30d"
    },
    {
      "name": "System Uptime",
      "metric": "availability",
      "target": ">= 99.95%",
      "window": "30d"
    }
  ]
}

Integrations

Connect Ops Ledger with your existing tools to create a unified operations platform.

Available Integrations

Jira - Sync tickets bidirectionally
Slack - Real-time notifications and commands
PagerDuty - Incident management integration
GitHub - Link changes to code deployments
Datadog - Import metrics and alerts

Setting Up Slack Integration

# 1. Install Ops Ledger app from Slack App Directory
# 2. Configure webhook in settings
POST /api/v1/integrations/slack
{
  "webhook_url": "https://hooks.slack.com/...",
  "channels": ["#ops-alerts", "#incidents"],
  "events": ["ticket.created", "sla.violated"]
}

API Reference

Programmatically interact with Ops Ledger using our RESTful API.

Authentication

curl -H "Authorization: Bearer YOUR_API_KEY" \
     -H "Content-Type: application/json" \
     https://api.opsledger.tech/v1/tickets

Common Endpoints

  • GET /api/v1/tickets - List all tickets
  • POST /api/v1/tickets - Create a ticket
  • GET /api/v1/tickets/{id} - Get ticket details
  • PATCH /api/v1/tickets/{id} - Update a ticket
  • GET /api/v1/analytics/sla - SLA compliance metrics
Rate Limits: 1000 requests per hour for standard plans

Automation & Workflows

Automate repetitive tasks and create custom workflows to streamline operations.

Workflow Example: Auto-Escalation

{
  "workflow": {
    "name": "Auto-escalate critical tickets",
    "trigger": "ticket.created",
    "conditions": [
      {"field": "priority", "equals": "critical"}
    ],
    "actions": [
      {
        "type": "notify",
        "target": "team:oncall",
        "channel": "slack"
      },
      {
        "type": "schedule",
        "delay": "15m",
        "action": "escalate_to_manager"
      }
    ]
  }
}