98 lines
2.3 KiB
YAML
98 lines
2.3 KiB
YAML
name: telemetry.capture
|
|
version: 0.1.0
|
|
description: >
|
|
Captures and logs usage telemetry for Betty Framework components.
|
|
Provides thread-safe JSON logging to /registry/telemetry.json with
|
|
ISO timestamps and structured metadata.
|
|
|
|
inputs:
|
|
- name: skill
|
|
type: string
|
|
required: true
|
|
description: Name of the skill/component being logged (e.g., 'plugin.build', 'agent.run')
|
|
|
|
- name: status
|
|
type: string
|
|
required: true
|
|
description: Execution status (success, failure, timeout, error, pending)
|
|
|
|
- name: duration_ms
|
|
type: number
|
|
required: true
|
|
description: Execution duration in milliseconds
|
|
|
|
- name: caller
|
|
type: string
|
|
required: true
|
|
description: Source of the call (e.g., CLI, API, workflow.compose)
|
|
|
|
- name: inputs
|
|
type: object
|
|
required: false
|
|
default: {}
|
|
description: Sanitized input parameters (no secrets)
|
|
|
|
- name: error_message
|
|
type: string
|
|
required: false
|
|
description: Error message if status is failure/error
|
|
|
|
- name: metadata
|
|
type: object
|
|
required: false
|
|
default: {}
|
|
description: Additional context (user, session_id, environment, etc.)
|
|
|
|
outputs:
|
|
- name: telemetry_entry
|
|
type: object
|
|
description: The captured telemetry entry with ISO timestamp
|
|
|
|
- name: telemetry_file
|
|
type: string
|
|
description: Path to the telemetry.json file
|
|
|
|
dependencies: []
|
|
|
|
status: active
|
|
|
|
entrypoints:
|
|
- command: /telemetry/capture
|
|
handler: telemetry_capture.py
|
|
runtime: python
|
|
description: Capture telemetry event for a Betty component
|
|
parameters:
|
|
- name: skill
|
|
type: string
|
|
required: true
|
|
description: Skill name
|
|
- name: status
|
|
type: string
|
|
required: true
|
|
description: Execution status
|
|
- name: duration_ms
|
|
type: number
|
|
required: true
|
|
description: Duration in milliseconds
|
|
- name: caller
|
|
type: string
|
|
required: true
|
|
description: Caller identifier
|
|
- name: inputs
|
|
type: string
|
|
required: false
|
|
description: JSON string of inputs
|
|
- name: error_message
|
|
type: string
|
|
required: false
|
|
description: Error message
|
|
permissions:
|
|
- filesystem:read
|
|
- filesystem:write
|
|
|
|
tags:
|
|
- telemetry
|
|
- logging
|
|
- observability
|
|
- audit
|