guidewire-observability

Monitor Guidewire InsuranceSuite: logging, metrics, tracing, and alerting via GCC. Trigger: "guidewire observability", "observability".

claude-code
6 Tools
guidewire-pack Plugin
saas packs Category

Allowed Tools

ReadWriteEditBash(curl:*)Bash(gradle:*)Grep

Provided by Plugin

guidewire-pack

Claude Code skill pack for Guidewire InsuranceSuite (24 skills)

saas packs v1.0.0
View Plugin

Installation

This skill is included in the guidewire-pack plugin:

/plugin install guidewire-pack@claude-code-plugins-plus

Click to copy

Instructions

Guidewire Observability

Overview

Guidewire InsuranceSuite processes claims, policies, and billing through long-running batch jobs and synchronous Cloud APIs. Observability must track claim processing times, policy synchronization health, billing accuracy, and integration endpoint status. Batch failures in ClaimCenter or PolicyCenter can silently block downstream workflows, so real-time alerting on queue depth and job completion is critical for insurance operations SLAs.

Key Metrics

Metric Type Target Alert Threshold
Claim processing time Histogram < 30s > 60s
Policy sync success rate Gauge > 99.5% < 98%
Billing accuracy rate Gauge > 99.9% < 99.5%
Cloud API latency p95 Histogram < 500ms > 2s
Batch job completion rate Gauge 100% < 95% per cycle
Integration queue depth Gauge < 100 > 500

Instrumentation


async function trackGuidewireAPI(endpoint: string, operation: string, fn: () => Promise<any>) {
  const start = Date.now();
  try {
    const result = await fn();
    metrics.histogram('guidewire.api.latency', Date.now() - start, { endpoint, operation });
    metrics.increment('guidewire.api.calls', { endpoint, status: 'ok' });
    return result;
  } catch (err) {
    metrics.increment('guidewire.api.errors', { endpoint, status: err.statusCode });
    throw err;
  }
}

Health Check Dashboard


async function guidewireHealth(): Promise<Record<string, string>> {
  const batchStatus = await gccAdmin.getBatchJobStatus();
  const apiLatency = await metrics.query('guidewire.api.latency', 'p95', '5m');
  const queueDepth = await gccAdmin.getIntegrationQueueDepth();
  return {
    batch_jobs: batchStatus.allCompleted ? 'healthy' : 'failed',
    api_latency: apiLatency < 500 ? 'healthy' : 'slow',
    integration_queue: queueDepth < 100 ? 'healthy' : 'backlogged',
  };
}

Alerting Rules


const alerts = [
  { metric: 'guidewire.claim.processing_time_p95', condition: '> 60s', window: '15m', severity: 'warning' },
  { metric: 'guidewire.batch.completion_rate', condition: '< 0.95', window: '1h', severity: 'critical' },
  { metric: 'guidewire.integration.queue_depth', condition: '> 500', window: '10m', severity: 'critical' },
  { metric: 'guidewire.api.error_rate', condition: '> 0.02', window: '5m', severity: 'warning' },
];

Structured Logging


function logGuidewireEvent(event: string, data: Record<string, any>) {
  console.log(JSON.stringify({
    service: 'guidewire', event,
    module: data.module, // ClaimCenter | PolicyCenter | BillingCenter
    operation: data.operation, duration_ms: data.latency,
    // Redact PII: no policyholder names, SSNs, or claim details
    claim_id: data.claimId, policy_number: data.policyNum,
    timestamp: new Date().toISOString(),
  }));
}

Error Handling

Signal Meaning Action
Batch job timeout Long-running claim/policy sync stalled Check GCC batch monitor, restart job
Queue depth > 500 Integration backlog growing Scale consumers, check downstream APIs
Policy sync < 98% Data mismatch between systems Audit sync logs, compare source records
API 503 errors GCC maintenance or overload Check GCC status page, retry with backoff
Billing discrepancy Calculation or rounding error Flag for manual review, audit batch output

Resources

Next Steps

See guidewire-incident-runbook.

Ready to use guidewire-pack?