{
  "name": "github.com/l1fe-labs/forge-go/telemetry",
  "language": "go",
  "version": "module source snapshot",
  "description": "Go telemetry package.",
  "manifest": "forge-go/go.mod",
  "manifestSha256": "dee97864d07a64c4c93c79104137d155f0cbae6962945f3b56ceb7744a03cc82",
  "status": "source-reference",
  "registryPublicationVerified": false,
  "route": "/libraries/go/telemetry",
  "features": {},
  "files": [
    {
      "path": "forge-go/telemetry/audit.go",
      "sha256": "822afc0a1820408a6abf4c27fc3c27996cc3f44342998e5e86aa68c54e44979d",
      "artifactSha256": "a283d9895e3736baf9dc858df61578e43f454031c0b8269fa9402292ff5fc8e8",
      "url": "/reference/source/forge-go/telemetry/audit.go.txt",
      "declarations": [
        {
          "name": "type AuditEntry struct",
          "line": 11,
          "signature": "type AuditEntry struct",
          "documentation": ""
        },
        {
          "name": "type AuditTrail struct",
          "line": 34,
          "signature": "type AuditTrail struct",
          "documentation": ""
        },
        {
          "name": "func NewAuditTrail(agentDID string) *AuditTrail",
          "line": 41,
          "signature": "func NewAuditTrail(agentDID string) *AuditTrail",
          "documentation": ""
        },
        {
          "name": "func (t *AuditTrail) Append(event AuditEvent)",
          "line": 51,
          "signature": "func (t *AuditTrail) Append(event AuditEvent)",
          "documentation": ""
        },
        {
          "name": "func (t *AuditTrail) Entries() []AuditEntry",
          "line": 62,
          "signature": "func (t *AuditTrail) Entries() []AuditEntry",
          "documentation": ""
        },
        {
          "name": "func (t *AuditTrail) Len() int",
          "line": 71,
          "signature": "func (t *AuditTrail) Len() int",
          "documentation": ""
        },
        {
          "name": "func (t *AuditTrail) IsEmpty() bool",
          "line": 78,
          "signature": "func (t *AuditTrail) IsEmpty() bool",
          "documentation": ""
        },
        {
          "name": "func (t *AuditTrail) Last() *AuditEntry",
          "line": 85,
          "signature": "func (t *AuditTrail) Last() *AuditEntry",
          "documentation": ""
        },
        {
          "name": "func (t *AuditTrail) AgentDID() string",
          "line": 96,
          "signature": "func (t *AuditTrail) AgentDID() string",
          "documentation": ""
        },
        {
          "name": "func (t *AuditTrail) FilterByKind(kind AuditEventKind) []AuditEntry",
          "line": 101,
          "signature": "func (t *AuditTrail) FilterByKind(kind AuditEventKind) []AuditEntry",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-go/telemetry/collector.go",
      "sha256": "e3215141845ecaa04b4859871a4813641016422ec005b36ceb268b38c36503ca",
      "artifactSha256": "469a753bda0f3ab230c02c4a54d899ef3d03ec70e46940cd970039f5fa19e82b",
      "url": "/reference/source/forge-go/telemetry/collector.go.txt",
      "declarations": [
        {
          "name": "type CompletedSpan struct",
          "line": 12,
          "signature": "type CompletedSpan struct",
          "documentation": ""
        },
        {
          "name": "type SpanCollector interface",
          "line": 35,
          "signature": "type SpanCollector interface",
          "documentation": ""
        },
        {
          "name": "type NoopCollector struct",
          "line": 53,
          "signature": "type NoopCollector struct",
          "documentation": ""
        },
        {
          "name": "func (NoopCollector) RecordSpan(_ CompletedSpan)",
          "line": 56,
          "signature": "func (NoopCollector) RecordSpan(_ CompletedSpan)",
          "documentation": ""
        },
        {
          "name": "func (NoopCollector) Spans() []CompletedSpan",
          "line": 59,
          "signature": "func (NoopCollector) Spans() []CompletedSpan",
          "documentation": ""
        },
        {
          "name": "func (NoopCollector) Clear()",
          "line": 62,
          "signature": "func (NoopCollector) Clear()",
          "documentation": ""
        },
        {
          "name": "func (NoopCollector) Len() int",
          "line": 65,
          "signature": "func (NoopCollector) Len() int",
          "documentation": ""
        },
        {
          "name": "func (NoopCollector) IsEmpty() bool",
          "line": 68,
          "signature": "func (NoopCollector) IsEmpty() bool",
          "documentation": ""
        },
        {
          "name": "type InMemoryCollector struct",
          "line": 74,
          "signature": "type InMemoryCollector struct",
          "documentation": ""
        },
        {
          "name": "func NewInMemoryCollector() *InMemoryCollector",
          "line": 80,
          "signature": "func NewInMemoryCollector() *InMemoryCollector",
          "documentation": ""
        },
        {
          "name": "func (c *InMemoryCollector) RecordSpan(span CompletedSpan)",
          "line": 85,
          "signature": "func (c *InMemoryCollector) RecordSpan(span CompletedSpan)",
          "documentation": ""
        },
        {
          "name": "func (c *InMemoryCollector) Spans() []CompletedSpan",
          "line": 92,
          "signature": "func (c *InMemoryCollector) Spans() []CompletedSpan",
          "documentation": ""
        },
        {
          "name": "func (c *InMemoryCollector) Clear()",
          "line": 101,
          "signature": "func (c *InMemoryCollector) Clear()",
          "documentation": ""
        },
        {
          "name": "func (c *InMemoryCollector) Len() int",
          "line": 108,
          "signature": "func (c *InMemoryCollector) Len() int",
          "documentation": ""
        },
        {
          "name": "func (c *InMemoryCollector) IsEmpty() bool",
          "line": 115,
          "signature": "func (c *InMemoryCollector) IsEmpty() bool",
          "documentation": ""
        },
        {
          "name": "type InMemoryTelemetry struct",
          "line": 134,
          "signature": "type InMemoryTelemetry struct",
          "documentation": ""
        },
        {
          "name": "func NewInMemoryTelemetry() *InMemoryTelemetry",
          "line": 142,
          "signature": "func NewInMemoryTelemetry() *InMemoryTelemetry",
          "documentation": ""
        },
        {
          "name": "func (t *InMemoryTelemetry) StartSpan(name string, agentDID string) SpanID",
          "line": 150,
          "signature": "func (t *InMemoryTelemetry) StartSpan(name string, agentDID string) SpanID",
          "documentation": ""
        },
        {
          "name": "func (t *InMemoryTelemetry) EndSpan(spanID SpanID) error",
          "line": 165,
          "signature": "func (t *InMemoryTelemetry) EndSpan(spanID SpanID) error",
          "documentation": ""
        },
        {
          "name": "func (t *InMemoryTelemetry) EmitEvent(event AuditEvent)",
          "line": 190,
          "signature": "func (t *InMemoryTelemetry) EmitEvent(event AuditEvent)",
          "documentation": ""
        },
        {
          "name": "func (t *InMemoryTelemetry) Flush() error",
          "line": 197,
          "signature": "func (t *InMemoryTelemetry) Flush() error",
          "documentation": ""
        },
        {
          "name": "func (t *InMemoryTelemetry) CompletedSpans() []CompletedSpan",
          "line": 202,
          "signature": "func (t *InMemoryTelemetry) CompletedSpans() []CompletedSpan",
          "documentation": ""
        },
        {
          "name": "func (t *InMemoryTelemetry) Events() []AuditEvent",
          "line": 207,
          "signature": "func (t *InMemoryTelemetry) Events() []AuditEvent",
          "documentation": ""
        },
        {
          "name": "func (t *InMemoryTelemetry) ActiveSpanCount() int",
          "line": 216,
          "signature": "func (t *InMemoryTelemetry) ActiveSpanCount() int",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-go/telemetry/contract.go",
      "sha256": "706b98e915b2f9201dad34aeb9a3ba57be2069376a43b63aef28396cc919349d",
      "artifactSha256": "f8c179b6db18e8e124c09c0fcc23be0a25059cbb42c859e0d1f64510789e189a",
      "url": "/reference/source/forge-go/telemetry/contract.go.txt",
      "declarations": [
        {
          "name": "type SpanID string",
          "line": 10,
          "signature": "type SpanID string\n\n// NewSpanID generates a new random span identifier.\nfunc NewSpanID() SpanID",
          "documentation": ""
        },
        {
          "name": "func NewSpanID() SpanID",
          "line": 13,
          "signature": "func NewSpanID() SpanID",
          "documentation": ""
        },
        {
          "name": "func (id SpanID) String() string",
          "line": 20,
          "signature": "func (id SpanID) String() string",
          "documentation": ""
        },
        {
          "name": "type AuditEventKind string",
          "line": 27,
          "signature": "type AuditEventKind string\n\nconst (\n// AuditLifecycleTransition records a lifecycle state change.\nAuditLifecycleTransition AuditEventKind;",
          "documentation": ""
        },
        {
          "name": "type AuditEvent struct",
          "line": 52,
          "signature": "type AuditEvent struct",
          "documentation": ""
        },
        {
          "name": "type TelemetryContract interface",
          "line": 76,
          "signature": "type TelemetryContract interface",
          "documentation": ""
        },
        {
          "name": "type NoopTelemetry struct",
          "line": 104,
          "signature": "type NoopTelemetry struct",
          "documentation": ""
        },
        {
          "name": "func (NoopTelemetry) StartSpan(_ string, _ string) SpanID",
          "line": 107,
          "signature": "func (NoopTelemetry) StartSpan(_ string, _ string) SpanID",
          "documentation": ""
        },
        {
          "name": "func (NoopTelemetry) EndSpan(_ SpanID) error",
          "line": 112,
          "signature": "func (NoopTelemetry) EndSpan(_ SpanID) error",
          "documentation": ""
        },
        {
          "name": "func (NoopTelemetry) EmitEvent(_ AuditEvent)",
          "line": 117,
          "signature": "func (NoopTelemetry) EmitEvent(_ AuditEvent)",
          "documentation": ""
        },
        {
          "name": "func (NoopTelemetry) Flush() error",
          "line": 120,
          "signature": "func (NoopTelemetry) Flush() error",
          "documentation": ""
        }
      ]
    },
    {
      "path": "forge-go/telemetry/errors.go",
      "sha256": "6acbcb6431f081bd95db59f82d3a5dad3600353528d073d3ad62f6d4bbaeb6d7",
      "artifactSha256": "d06a1590c872efdf1929d51e0107d2e4310823df526fffeb3394e8fade0998c9",
      "url": "/reference/source/forge-go/telemetry/errors.go.txt",
      "declarations": [
        {
          "name": "type TelemetryError struct",
          "line": 12,
          "signature": "type TelemetryError struct",
          "documentation": ""
        },
        {
          "name": "type TelemetryErrorKind string",
          "line": 24,
          "signature": "type TelemetryErrorKind string\n\nconst (\n// ErrKindSpanNotFound indicates the span does not exist.\nErrKindSpanNotFound TelemetryErrorKind;",
          "documentation": ""
        },
        {
          "name": "func (e *TelemetryError) Error() string",
          "line": 50,
          "signature": "func (e *TelemetryError) Error() string",
          "documentation": ""
        },
        {
          "name": "func (e *TelemetryError) Unwrap() error",
          "line": 58,
          "signature": "func (e *TelemetryError) Unwrap() error",
          "documentation": ""
        },
        {
          "name": "func NewSpanNotFoundError(spanID string) *TelemetryError",
          "line": 63,
          "signature": "func NewSpanNotFoundError(spanID string) *TelemetryError",
          "documentation": ""
        },
        {
          "name": "func NewSpanAlreadyClosedError(spanID string) *TelemetryError",
          "line": 71,
          "signature": "func NewSpanAlreadyClosedError(spanID string) *TelemetryError",
          "documentation": ""
        },
        {
          "name": "func NewAuditEntryInvalidError(reason string) *TelemetryError",
          "line": 79,
          "signature": "func NewAuditEntryInvalidError(reason string) *TelemetryError",
          "documentation": ""
        },
        {
          "name": "func NewFlushFailedError(cause error) *TelemetryError",
          "line": 87,
          "signature": "func NewFlushFailedError(cause error) *TelemetryError",
          "documentation": ""
        },
        {
          "name": "func NewCollectorFullError(capacity int) *TelemetryError",
          "line": 96,
          "signature": "func NewCollectorFullError(capacity int) *TelemetryError",
          "documentation": ""
        },
        {
          "name": "func NewExportFailedError(dest string, cause error) *TelemetryError",
          "line": 104,
          "signature": "func NewExportFailedError(dest string, cause error) *TelemetryError",
          "documentation": ""
        }
      ]
    }
  ]
}
