+
+

KubeSmarts Data Index

+

Real-time GraphQL query service for Serverless Workflow execution data

+
+ +
+

API Endpoints

+
+
+
+ POST + /graphql +
+
GraphQL API for querying workflow and task execution data
+ +
+ +
+
+ GET + /q/health +
+
Health check and readiness probes
+ View Health +
+ +
+
+ GET + /q/metrics +
+
Prometheus metrics endpoint
+ View Metrics +
+
+
+ +
+

Architecture

+
+
Quarkus Flow App
+    ↓ (stdout - JSON events)
+Kubernetes /var/log/containers/
+    ↓ (FluentBit DaemonSet)
+PostgreSQL Raw Tables
+    ↓ (BEFORE INSERT Triggers)
+PostgreSQL Normalized Tables
+    ↓ (JPA / GraphQL)
+Data Index GraphQL API
+
+
+ +
+
+

Data Model

+

WorkflowInstance

+
    +
  • id - Instance ID (ULID)
  • +
  • namespace, name - Identity
  • +
  • status - RUNNING | COMPLETED | FAULTED
  • +
  • startDate, endDate - Lifecycle
  • +
  • input, output - Data (JSONB)
  • +
+

TaskExecution

+
    +
  • id - Execution ID
  • +
  • taskName, taskPosition
  • +
  • status - RUNNING | COMPLETED | FAULTED
  • +
  • workflowInstance - Parent reference
  • +
+
+ +
+

Key Features

+
    +
  • Real-time workflow execution visibility
  • +
  • GraphQL API with filtering and pagination
  • +
  • Trigger-based data normalization
  • +
  • Idempotent event processing
  • +
  • Out-of-order event handling
  • +
  • Event replay safety
  • +
+
+ +
+

Available Queries

+
    +
  • getWorkflowInstances
  • +
  • getWorkflowInstance(id: String!)
  • +
  • getTaskExecutions
  • +
  • getTaskExecution(id: String!)
  • +
  • getTaskExecutionsByWorkflowInstance
  • +
+
+
+ +