@ancplua/qyl-api-schema 0.2.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/LICENSE +201 -0
- package/README.md +89 -0
- package/VERSIONING.md +74 -0
- package/api/routes.tsp +1052 -0
- package/api/streaming.tsp +335 -0
- package/common/errors.tsp +206 -0
- package/common/pagination.tsp +254 -0
- package/common/types.tsp +345 -0
- package/generated/README.md +26 -0
- package/generated/otel-keys.gen.tsp +1648 -0
- package/index.tsp +55 -0
- package/intelligence/causal-rules.tsp +34 -0
- package/intelligence/diagnostic-patterns.tsp +54 -0
- package/intelligence/investigation-strategies.tsp +37 -0
- package/intelligence/main.tsp +19 -0
- package/intelligence/seed/patterns.tsp +172 -0
- package/intelligence/seed/rules.tsp +44 -0
- package/intelligence/seed/strategies.tsp +56 -0
- package/intelligence/signals.tsp +60 -0
- package/models/agent/agent-run.tsp +154 -0
- package/models/agent/tool-call.tsp +122 -0
- package/models/agent/workflow-checkpoint.tsp +50 -0
- package/models/agent/workflow-execution.tsp +136 -0
- package/models/alerting.tsp +436 -0
- package/models/configurator.tsp +433 -0
- package/models/control-graph.tsp +197 -0
- package/models/db.tsp +810 -0
- package/models/deployment.tsp +365 -0
- package/models/error.tsp +433 -0
- package/models/genai.tsp +1368 -0
- package/models/http.tsp +600 -0
- package/models/identity.tsp +213 -0
- package/models/issues.tsp +484 -0
- package/models/log.tsp +140 -0
- package/models/messaging.tsp +304 -0
- package/models/otel-config.tsp +455 -0
- package/models/retention.tsp +240 -0
- package/models/rpc.tsp +309 -0
- package/models/search.tsp +243 -0
- package/models/session.tsp +274 -0
- package/models/system.tsp +400 -0
- package/models/test.tsp +346 -0
- package/models/triage.tsp +113 -0
- package/models/workflow.tsp +396 -0
- package/models/workspace.tsp +435 -0
- package/otel/enums.tsp +392 -0
- package/otel/logs.tsp +135 -0
- package/otel/metrics.tsp +358 -0
- package/otel/otel-conventions.tsp +14 -0
- package/otel/profiles.tsp +335 -0
- package/otel/resource.tsp +257 -0
- package/otel/span.tsp +307 -0
- package/package.json +88 -0
- package/tspconfig.yaml +49 -0
|
@@ -0,0 +1,274 @@
|
|
|
1
|
+
// =============================================================================
|
|
2
|
+
// ANcpLua v2.0 - Session Semantic Conventions (OTel v1.40)
|
|
3
|
+
// =============================================================================
|
|
4
|
+
// User session telemetry attributes.
|
|
5
|
+
// =============================================================================
|
|
6
|
+
|
|
7
|
+
import "@typespec/openapi";
|
|
8
|
+
import "../common/types.tsp";
|
|
9
|
+
|
|
10
|
+
using TypeSpec.OpenAPI;
|
|
11
|
+
using Qyl.Api.Contracts.Common;
|
|
12
|
+
|
|
13
|
+
namespace Qyl.Api.Contracts.Domains.Observe.Session;
|
|
14
|
+
|
|
15
|
+
// =============================================================================
|
|
16
|
+
// Session Attributes
|
|
17
|
+
// =============================================================================
|
|
18
|
+
|
|
19
|
+
@doc("Session span/event attributes")
|
|
20
|
+
model SessionAttributes {
|
|
21
|
+
@doc("Session ID")
|
|
22
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.Session.Id)
|
|
23
|
+
id: SessionId;
|
|
24
|
+
|
|
25
|
+
@doc("Previous session ID (for session continuity)")
|
|
26
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.Session.PreviousId)
|
|
27
|
+
previousId?: SessionId;
|
|
28
|
+
}
|
|
29
|
+
|
|
30
|
+
// =============================================================================
|
|
31
|
+
// Session Event Models
|
|
32
|
+
// =============================================================================
|
|
33
|
+
|
|
34
|
+
@doc("Session lifecycle event")
|
|
35
|
+
model SessionEvent {
|
|
36
|
+
@doc("Event name")
|
|
37
|
+
@encodedName("application/json", "event.name")
|
|
38
|
+
eventName: SessionEventName;
|
|
39
|
+
|
|
40
|
+
@doc("Session ID")
|
|
41
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.Session.Id)
|
|
42
|
+
sessionId: SessionId;
|
|
43
|
+
|
|
44
|
+
@doc("Event timestamp")
|
|
45
|
+
timestamp: utcDateTime;
|
|
46
|
+
|
|
47
|
+
@doc("Event domain")
|
|
48
|
+
@encodedName("application/json", "event.domain")
|
|
49
|
+
eventDomain: "session";
|
|
50
|
+
}
|
|
51
|
+
|
|
52
|
+
@doc("Session event names")
|
|
53
|
+
enum SessionEventName {
|
|
54
|
+
@doc("Session started")
|
|
55
|
+
sessionStart: "session.start",
|
|
56
|
+
|
|
57
|
+
@doc("Session ended")
|
|
58
|
+
sessionEnd: "session.end",
|
|
59
|
+
}
|
|
60
|
+
|
|
61
|
+
// =============================================================================
|
|
62
|
+
// Session Entity Model (Full Session Record)
|
|
63
|
+
// =============================================================================
|
|
64
|
+
|
|
65
|
+
@doc("Complete session entity with aggregated data")
|
|
66
|
+
@TypeSpec.OpenAPI.extension("x-csharp-type", "SessionEntity")
|
|
67
|
+
model SessionEntity {
|
|
68
|
+
@doc("Session ID")
|
|
69
|
+
@key
|
|
70
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.Session.Id)
|
|
71
|
+
sessionId: SessionId;
|
|
72
|
+
|
|
73
|
+
@doc("User ID (if authenticated)")
|
|
74
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.User.Id)
|
|
75
|
+
userId?: UserId;
|
|
76
|
+
|
|
77
|
+
@doc("Session start time")
|
|
78
|
+
@encodedName("application/json", "start_time")
|
|
79
|
+
startTime: utcDateTime;
|
|
80
|
+
|
|
81
|
+
@doc("Session end time")
|
|
82
|
+
@encodedName("application/json", "end_time")
|
|
83
|
+
endTime?: utcDateTime;
|
|
84
|
+
|
|
85
|
+
@doc("Session duration in milliseconds")
|
|
86
|
+
@encodedName("application/json", "duration_ms")
|
|
87
|
+
durationMs?: DurationMs;
|
|
88
|
+
|
|
89
|
+
@doc("Total trace count in session")
|
|
90
|
+
@encodedName("application/json", "trace_count")
|
|
91
|
+
@minValue(0)
|
|
92
|
+
traceCount: int32;
|
|
93
|
+
|
|
94
|
+
@doc("Total span count in session")
|
|
95
|
+
@encodedName("application/json", "span_count")
|
|
96
|
+
@minValue(0)
|
|
97
|
+
spanCount: int32;
|
|
98
|
+
|
|
99
|
+
@doc("Total error count in session")
|
|
100
|
+
@encodedName("application/json", "error_count")
|
|
101
|
+
@minValue(0)
|
|
102
|
+
errorCount: int32;
|
|
103
|
+
|
|
104
|
+
@doc("Service names observed in this session")
|
|
105
|
+
services: string[];
|
|
106
|
+
|
|
107
|
+
@doc("Session state")
|
|
108
|
+
state: SessionState;
|
|
109
|
+
|
|
110
|
+
@doc("Client information")
|
|
111
|
+
client?: SessionClientInfo;
|
|
112
|
+
|
|
113
|
+
@doc("Location information")
|
|
114
|
+
geo?: SessionGeoInfo;
|
|
115
|
+
|
|
116
|
+
@doc("GenAI usage summary")
|
|
117
|
+
@encodedName("application/json", "genai_usage")
|
|
118
|
+
genaiUsage?: SessionGenAiUsage;
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
@doc("Session states")
|
|
122
|
+
enum SessionState {
|
|
123
|
+
@doc("Session is active")
|
|
124
|
+
active: "active",
|
|
125
|
+
|
|
126
|
+
@doc("Session is idle")
|
|
127
|
+
idle: "idle",
|
|
128
|
+
|
|
129
|
+
@doc("Session has ended normally")
|
|
130
|
+
ended: "ended",
|
|
131
|
+
|
|
132
|
+
@doc("Session has timed out")
|
|
133
|
+
timedOut: "timed_out",
|
|
134
|
+
|
|
135
|
+
@doc("Session was invalidated")
|
|
136
|
+
invalidated: "invalidated",
|
|
137
|
+
}
|
|
138
|
+
|
|
139
|
+
@doc("Session client information")
|
|
140
|
+
model SessionClientInfo {
|
|
141
|
+
@doc("Client IP address")
|
|
142
|
+
ip?: IpAddress;
|
|
143
|
+
|
|
144
|
+
@doc("User agent string")
|
|
145
|
+
@encodedName("application/json", "user_agent")
|
|
146
|
+
userAgent?: UserAgent;
|
|
147
|
+
|
|
148
|
+
@doc("Device type")
|
|
149
|
+
@encodedName("application/json", "device_type")
|
|
150
|
+
deviceType?: DeviceType;
|
|
151
|
+
|
|
152
|
+
@doc("Operating system")
|
|
153
|
+
os?: string;
|
|
154
|
+
|
|
155
|
+
@doc("Browser name")
|
|
156
|
+
browser?: string;
|
|
157
|
+
|
|
158
|
+
@doc("Browser version")
|
|
159
|
+
@encodedName("application/json", "browser_version")
|
|
160
|
+
browserVersion?: string;
|
|
161
|
+
}
|
|
162
|
+
|
|
163
|
+
@doc("Device types")
|
|
164
|
+
enum DeviceType {
|
|
165
|
+
@doc("Desktop computer")
|
|
166
|
+
desktop: "desktop",
|
|
167
|
+
|
|
168
|
+
@doc("Mobile phone")
|
|
169
|
+
mobile: "mobile",
|
|
170
|
+
|
|
171
|
+
@doc("Tablet device")
|
|
172
|
+
tablet: "tablet",
|
|
173
|
+
|
|
174
|
+
@doc("TV or set-top box")
|
|
175
|
+
tv: "tv",
|
|
176
|
+
|
|
177
|
+
@doc("Gaming console")
|
|
178
|
+
console: "console",
|
|
179
|
+
|
|
180
|
+
@doc("Wearable device")
|
|
181
|
+
wearable: "wearable",
|
|
182
|
+
|
|
183
|
+
@doc("IoT device")
|
|
184
|
+
iot: "iot",
|
|
185
|
+
|
|
186
|
+
@doc("Bot/crawler")
|
|
187
|
+
bot: "bot",
|
|
188
|
+
|
|
189
|
+
@doc("Unknown device")
|
|
190
|
+
`unknown`: "unknown",
|
|
191
|
+
}
|
|
192
|
+
|
|
193
|
+
@doc("Session geographic information")
|
|
194
|
+
model SessionGeoInfo {
|
|
195
|
+
@doc("Country code (ISO 3166-1 alpha-2)")
|
|
196
|
+
@encodedName("application/json", "country_code")
|
|
197
|
+
countryCode?: string;
|
|
198
|
+
|
|
199
|
+
@doc("Country name")
|
|
200
|
+
@encodedName("application/json", "country_name")
|
|
201
|
+
countryName?: string;
|
|
202
|
+
|
|
203
|
+
@doc("Region/state")
|
|
204
|
+
region?: string;
|
|
205
|
+
|
|
206
|
+
@doc("City")
|
|
207
|
+
city?: string;
|
|
208
|
+
|
|
209
|
+
@doc("Postal code")
|
|
210
|
+
@encodedName("application/json", "postal_code")
|
|
211
|
+
postalCode?: string;
|
|
212
|
+
|
|
213
|
+
@doc("Timezone")
|
|
214
|
+
timezone?: string;
|
|
215
|
+
}
|
|
216
|
+
|
|
217
|
+
@doc("Session GenAI usage summary")
|
|
218
|
+
model SessionGenAiUsage {
|
|
219
|
+
@doc("Total GenAI requests in session")
|
|
220
|
+
@encodedName("application/json", "request_count")
|
|
221
|
+
@minValue(0)
|
|
222
|
+
requestCount: int32;
|
|
223
|
+
|
|
224
|
+
@doc("Total input tokens consumed")
|
|
225
|
+
@encodedName("application/json", "total_input_tokens")
|
|
226
|
+
totalInputTokens: TokenCount;
|
|
227
|
+
|
|
228
|
+
@doc("Total output tokens generated")
|
|
229
|
+
@encodedName("application/json", "total_output_tokens")
|
|
230
|
+
totalOutputTokens: TokenCount;
|
|
231
|
+
|
|
232
|
+
@doc("Models used in session")
|
|
233
|
+
@encodedName("application/json", "models_used")
|
|
234
|
+
modelsUsed: string[];
|
|
235
|
+
|
|
236
|
+
@doc("Providers used in session")
|
|
237
|
+
@encodedName("application/json", "providers_used")
|
|
238
|
+
providersUsed: string[];
|
|
239
|
+
|
|
240
|
+
@doc("Estimated cost in USD")
|
|
241
|
+
@encodedName("application/json", "estimated_cost_usd")
|
|
242
|
+
estimatedCostUsd?: float64;
|
|
243
|
+
}
|
|
244
|
+
|
|
245
|
+
// =============================================================================
|
|
246
|
+
// Session Statistics
|
|
247
|
+
// =============================================================================
|
|
248
|
+
|
|
249
|
+
@doc("Aggregated session statistics")
|
|
250
|
+
model SessionStats {
|
|
251
|
+
@doc("Active sessions count")
|
|
252
|
+
@encodedName("application/json", "active_sessions")
|
|
253
|
+
activeSessions: Count;
|
|
254
|
+
|
|
255
|
+
@doc("Total sessions in time range")
|
|
256
|
+
@encodedName("application/json", "total_sessions")
|
|
257
|
+
totalSessions: Count;
|
|
258
|
+
|
|
259
|
+
@doc("Average session duration in milliseconds")
|
|
260
|
+
@encodedName("application/json", "avg_duration_ms")
|
|
261
|
+
avgDurationMs: float64;
|
|
262
|
+
|
|
263
|
+
@doc("Sessions with errors")
|
|
264
|
+
@encodedName("application/json", "sessions_with_errors")
|
|
265
|
+
sessionsWithErrors: Count;
|
|
266
|
+
|
|
267
|
+
@doc("Sessions with GenAI usage")
|
|
268
|
+
@encodedName("application/json", "sessions_with_genai")
|
|
269
|
+
sessionsWithGenAi: Count;
|
|
270
|
+
|
|
271
|
+
@doc("Bounce rate (single-page sessions)")
|
|
272
|
+
@encodedName("application/json", "bounce_rate")
|
|
273
|
+
bounceRate: Ratio;
|
|
274
|
+
}
|
|
@@ -0,0 +1,400 @@
|
|
|
1
|
+
// =============================================================================
|
|
2
|
+
// ANcpLua v2.0 - System Semantic Conventions (OTel v1.40)
|
|
3
|
+
// =============================================================================
|
|
4
|
+
// Operating system telemetry attributes.
|
|
5
|
+
// =============================================================================
|
|
6
|
+
|
|
7
|
+
import "../common/types.tsp";
|
|
8
|
+
import "../otel/resource.tsp";
|
|
9
|
+
|
|
10
|
+
using Qyl.Api.Contracts.Common;
|
|
11
|
+
using Qyl.Api.Contracts.OTel.Resource;
|
|
12
|
+
|
|
13
|
+
namespace Qyl.Api.Contracts.Domains.Runtime.System;
|
|
14
|
+
|
|
15
|
+
// =============================================================================
|
|
16
|
+
// OS Resource Attributes
|
|
17
|
+
// =============================================================================
|
|
18
|
+
|
|
19
|
+
@doc("Operating system resource attributes")
|
|
20
|
+
model OsAttributes {
|
|
21
|
+
@doc("Operating system type")
|
|
22
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.Os.Type)
|
|
23
|
+
osType?: OsType;
|
|
24
|
+
|
|
25
|
+
@doc("Operating system description")
|
|
26
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.Os.Description)
|
|
27
|
+
description?: string;
|
|
28
|
+
|
|
29
|
+
@doc("Operating system name")
|
|
30
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.Os.Name)
|
|
31
|
+
name?: string;
|
|
32
|
+
|
|
33
|
+
@doc("Operating system version")
|
|
34
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.Os.Version)
|
|
35
|
+
version?: string;
|
|
36
|
+
|
|
37
|
+
@doc("Operating system build ID")
|
|
38
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.Os.BuildId)
|
|
39
|
+
buildId?: string;
|
|
40
|
+
}
|
|
41
|
+
|
|
42
|
+
// =============================================================================
|
|
43
|
+
// System Metrics
|
|
44
|
+
// =============================================================================
|
|
45
|
+
|
|
46
|
+
@doc("System CPU utilization metric")
|
|
47
|
+
model SystemCpuUtilizationMetric {
|
|
48
|
+
@doc("Metric name")
|
|
49
|
+
name: "system.cpu.utilization";
|
|
50
|
+
|
|
51
|
+
@doc("Metric unit (ratio)")
|
|
52
|
+
unit: "1";
|
|
53
|
+
|
|
54
|
+
@doc("CPU state")
|
|
55
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.System.CpuState)
|
|
56
|
+
cpuState: SystemCpuState;
|
|
57
|
+
|
|
58
|
+
@doc("CPU logical number")
|
|
59
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.System.CpuLogicalNumber)
|
|
60
|
+
cpuLogicalNumber?: int32;
|
|
61
|
+
}
|
|
62
|
+
|
|
63
|
+
@doc("System CPU time metric")
|
|
64
|
+
model SystemCpuTimeMetric {
|
|
65
|
+
@doc("Metric name")
|
|
66
|
+
name: "system.cpu.time";
|
|
67
|
+
|
|
68
|
+
@doc("Metric unit (seconds)")
|
|
69
|
+
unit: "s";
|
|
70
|
+
|
|
71
|
+
@doc("CPU state")
|
|
72
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.System.CpuState)
|
|
73
|
+
cpuState: SystemCpuState;
|
|
74
|
+
|
|
75
|
+
@doc("CPU logical number")
|
|
76
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.System.CpuLogicalNumber)
|
|
77
|
+
cpuLogicalNumber?: int32;
|
|
78
|
+
}
|
|
79
|
+
|
|
80
|
+
@doc("System CPU frequency metric")
|
|
81
|
+
model SystemCpuFrequencyMetric {
|
|
82
|
+
@doc("Metric name")
|
|
83
|
+
name: "system.cpu.frequency";
|
|
84
|
+
|
|
85
|
+
@doc("Metric unit (Hz)")
|
|
86
|
+
unit: "Hz";
|
|
87
|
+
|
|
88
|
+
@doc("CPU logical number")
|
|
89
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.System.CpuLogicalNumber)
|
|
90
|
+
cpuLogicalNumber?: int32;
|
|
91
|
+
}
|
|
92
|
+
|
|
93
|
+
@doc("System memory usage metric")
|
|
94
|
+
model SystemMemoryUsageMetric {
|
|
95
|
+
@doc("Metric name")
|
|
96
|
+
name: "system.memory.usage";
|
|
97
|
+
|
|
98
|
+
@doc("Metric unit (bytes)")
|
|
99
|
+
unit: "By";
|
|
100
|
+
|
|
101
|
+
@doc("Memory state")
|
|
102
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.System.MemoryState)
|
|
103
|
+
memoryState: SystemMemoryState;
|
|
104
|
+
}
|
|
105
|
+
|
|
106
|
+
@doc("System memory utilization metric")
|
|
107
|
+
model SystemMemoryUtilizationMetric {
|
|
108
|
+
@doc("Metric name")
|
|
109
|
+
name: "system.memory.utilization";
|
|
110
|
+
|
|
111
|
+
@doc("Metric unit (ratio)")
|
|
112
|
+
unit: "1";
|
|
113
|
+
|
|
114
|
+
@doc("Memory state")
|
|
115
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.System.MemoryState)
|
|
116
|
+
memoryState: SystemMemoryState;
|
|
117
|
+
}
|
|
118
|
+
|
|
119
|
+
@doc("System disk IO metric")
|
|
120
|
+
model SystemDiskIoMetric {
|
|
121
|
+
@doc("Metric name")
|
|
122
|
+
name: "system.disk.io";
|
|
123
|
+
|
|
124
|
+
@doc("Metric unit (bytes)")
|
|
125
|
+
unit: "By";
|
|
126
|
+
|
|
127
|
+
@doc("Disk device")
|
|
128
|
+
@encodedName("application/json", "system.disk.device")
|
|
129
|
+
diskDevice: string;
|
|
130
|
+
|
|
131
|
+
@doc("IO direction")
|
|
132
|
+
@encodedName("application/json", "system.disk.direction")
|
|
133
|
+
diskDirection: string;
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
@doc("System disk operations metric")
|
|
137
|
+
model SystemDiskOperationsMetric {
|
|
138
|
+
@doc("Metric name")
|
|
139
|
+
name: "system.disk.operations";
|
|
140
|
+
|
|
141
|
+
@doc("Metric unit")
|
|
142
|
+
unit: "{operation}";
|
|
143
|
+
|
|
144
|
+
@doc("Disk device")
|
|
145
|
+
@encodedName("application/json", "system.disk.device")
|
|
146
|
+
diskDevice: string;
|
|
147
|
+
|
|
148
|
+
@doc("IO direction")
|
|
149
|
+
@encodedName("application/json", "system.disk.direction")
|
|
150
|
+
diskDirection: string;
|
|
151
|
+
}
|
|
152
|
+
|
|
153
|
+
@doc("System disk IO time metric")
|
|
154
|
+
model SystemDiskIoTimeMetric {
|
|
155
|
+
@doc("Metric name")
|
|
156
|
+
name: "system.disk.io_time";
|
|
157
|
+
|
|
158
|
+
@doc("Metric unit (seconds)")
|
|
159
|
+
unit: "s";
|
|
160
|
+
|
|
161
|
+
@doc("Disk device")
|
|
162
|
+
@encodedName("application/json", "system.disk.device")
|
|
163
|
+
diskDevice: string;
|
|
164
|
+
}
|
|
165
|
+
|
|
166
|
+
@doc("System filesystem usage metric")
|
|
167
|
+
model SystemFilesystemUsageMetric {
|
|
168
|
+
@doc("Metric name")
|
|
169
|
+
name: "system.filesystem.usage";
|
|
170
|
+
|
|
171
|
+
@doc("Metric unit (bytes)")
|
|
172
|
+
unit: "By";
|
|
173
|
+
|
|
174
|
+
@doc("Filesystem device")
|
|
175
|
+
@encodedName("application/json", "system.filesystem.device")
|
|
176
|
+
device: string;
|
|
177
|
+
|
|
178
|
+
@doc("Filesystem mount point")
|
|
179
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.System.FilesystemMountpoint)
|
|
180
|
+
mountpoint: string;
|
|
181
|
+
|
|
182
|
+
@doc("Filesystem type")
|
|
183
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.System.FilesystemType)
|
|
184
|
+
fsType: string;
|
|
185
|
+
|
|
186
|
+
@doc("Filesystem state")
|
|
187
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.System.FilesystemState)
|
|
188
|
+
state: SystemFilesystemState;
|
|
189
|
+
}
|
|
190
|
+
|
|
191
|
+
@doc("System network IO metric")
|
|
192
|
+
model SystemNetworkIoMetric {
|
|
193
|
+
@doc("Metric name")
|
|
194
|
+
name: "system.network.io";
|
|
195
|
+
|
|
196
|
+
@doc("Metric unit (bytes)")
|
|
197
|
+
unit: "By";
|
|
198
|
+
|
|
199
|
+
@doc("Network device")
|
|
200
|
+
@encodedName("application/json", "system.network.device")
|
|
201
|
+
networkDevice: string;
|
|
202
|
+
|
|
203
|
+
@doc("IO direction")
|
|
204
|
+
@encodedName("application/json", "system.network.direction")
|
|
205
|
+
networkDirection: string;
|
|
206
|
+
}
|
|
207
|
+
|
|
208
|
+
@doc("System network connections metric")
|
|
209
|
+
model SystemNetworkConnectionsMetric {
|
|
210
|
+
@doc("Metric name")
|
|
211
|
+
name: "system.network.connections";
|
|
212
|
+
|
|
213
|
+
@doc("Metric unit")
|
|
214
|
+
unit: "{connection}";
|
|
215
|
+
|
|
216
|
+
@doc("Network protocol")
|
|
217
|
+
@encodedName("application/json", "system.network.protocol")
|
|
218
|
+
protocol: string;
|
|
219
|
+
|
|
220
|
+
@doc("Network state")
|
|
221
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.Network.ConnectionState)
|
|
222
|
+
state: SystemNetworkState;
|
|
223
|
+
}
|
|
224
|
+
|
|
225
|
+
@doc("System paging usage metric")
|
|
226
|
+
model SystemPagingUsageMetric {
|
|
227
|
+
@doc("Metric name")
|
|
228
|
+
name: "system.paging.usage";
|
|
229
|
+
|
|
230
|
+
@doc("Metric unit (bytes)")
|
|
231
|
+
unit: "By";
|
|
232
|
+
|
|
233
|
+
@doc("Paging state")
|
|
234
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.System.PagingState)
|
|
235
|
+
pagingState: SystemPagingState;
|
|
236
|
+
|
|
237
|
+
@doc("Paging device")
|
|
238
|
+
@encodedName("application/json", "system.paging.device")
|
|
239
|
+
device?: string;
|
|
240
|
+
}
|
|
241
|
+
|
|
242
|
+
@doc("System paging operations metric")
|
|
243
|
+
model SystemPagingOperationsMetric {
|
|
244
|
+
@doc("Metric name")
|
|
245
|
+
name: "system.paging.operations";
|
|
246
|
+
|
|
247
|
+
@doc("Metric unit")
|
|
248
|
+
unit: "{operation}";
|
|
249
|
+
|
|
250
|
+
@doc("Paging type")
|
|
251
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.System.PagingType)
|
|
252
|
+
pagingType: SystemPagingType;
|
|
253
|
+
|
|
254
|
+
@doc("Paging direction")
|
|
255
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.System.PagingDirection)
|
|
256
|
+
pagingDirection: string;
|
|
257
|
+
}
|
|
258
|
+
|
|
259
|
+
@doc("System process count metric")
|
|
260
|
+
model SystemProcessCountMetric {
|
|
261
|
+
@doc("Metric name")
|
|
262
|
+
name: "system.process.count";
|
|
263
|
+
|
|
264
|
+
@doc("Metric unit")
|
|
265
|
+
unit: "{process}";
|
|
266
|
+
|
|
267
|
+
@doc("Process status")
|
|
268
|
+
@encodedName("application/json", ANcpLua.OpenTelemetry.SemanticConventions.Keys.System.ProcessStatus)
|
|
269
|
+
processStatus: SystemProcessStatus;
|
|
270
|
+
}
|
|
271
|
+
|
|
272
|
+
// =============================================================================
|
|
273
|
+
// System Enumerations
|
|
274
|
+
// =============================================================================
|
|
275
|
+
|
|
276
|
+
@doc("System CPU states")
|
|
277
|
+
enum SystemCpuState {
|
|
278
|
+
@doc("User mode")
|
|
279
|
+
user: "user",
|
|
280
|
+
|
|
281
|
+
@doc("System mode")
|
|
282
|
+
system: "system",
|
|
283
|
+
|
|
284
|
+
@doc("Nice mode")
|
|
285
|
+
nice: "nice",
|
|
286
|
+
|
|
287
|
+
@doc("Idle")
|
|
288
|
+
idle: "idle",
|
|
289
|
+
|
|
290
|
+
@doc("I/O wait")
|
|
291
|
+
iowait: "iowait",
|
|
292
|
+
|
|
293
|
+
@doc("Interrupt")
|
|
294
|
+
interrupt: "interrupt",
|
|
295
|
+
|
|
296
|
+
@doc("Steal")
|
|
297
|
+
steal: "steal",
|
|
298
|
+
}
|
|
299
|
+
|
|
300
|
+
@doc("System memory states")
|
|
301
|
+
enum SystemMemoryState {
|
|
302
|
+
@doc("Used memory")
|
|
303
|
+
used: "used",
|
|
304
|
+
|
|
305
|
+
@doc("Free memory")
|
|
306
|
+
free: "free",
|
|
307
|
+
|
|
308
|
+
@doc("Buffered memory")
|
|
309
|
+
buffered: "buffered",
|
|
310
|
+
|
|
311
|
+
@doc("Cached memory")
|
|
312
|
+
cached: "cached",
|
|
313
|
+
|
|
314
|
+
@doc("Shared memory")
|
|
315
|
+
shared: "shared",
|
|
316
|
+
}
|
|
317
|
+
|
|
318
|
+
@doc("System filesystem states")
|
|
319
|
+
enum SystemFilesystemState {
|
|
320
|
+
@doc("Used space")
|
|
321
|
+
used: "used",
|
|
322
|
+
|
|
323
|
+
@doc("Free space")
|
|
324
|
+
free: "free",
|
|
325
|
+
|
|
326
|
+
@doc("Reserved space")
|
|
327
|
+
reserved: "reserved",
|
|
328
|
+
}
|
|
329
|
+
|
|
330
|
+
@doc("System network states")
|
|
331
|
+
enum SystemNetworkState {
|
|
332
|
+
@doc("CLOSE state")
|
|
333
|
+
close: "close",
|
|
334
|
+
|
|
335
|
+
@doc("CLOSE_WAIT state")
|
|
336
|
+
closeWait: "close_wait",
|
|
337
|
+
|
|
338
|
+
@doc("CLOSING state")
|
|
339
|
+
closing: "closing",
|
|
340
|
+
|
|
341
|
+
@doc("DELETE state")
|
|
342
|
+
delete: "delete",
|
|
343
|
+
|
|
344
|
+
@doc("ESTABLISHED state")
|
|
345
|
+
established: "established",
|
|
346
|
+
|
|
347
|
+
@doc("FIN_WAIT_1 state")
|
|
348
|
+
finWait1: "fin_wait_1",
|
|
349
|
+
|
|
350
|
+
@doc("FIN_WAIT_2 state")
|
|
351
|
+
finWait2: "fin_wait_2",
|
|
352
|
+
|
|
353
|
+
@doc("LAST_ACK state")
|
|
354
|
+
lastAck: "last_ack",
|
|
355
|
+
|
|
356
|
+
@doc("LISTEN state")
|
|
357
|
+
listen: "listen",
|
|
358
|
+
|
|
359
|
+
@doc("SYN_RECV state")
|
|
360
|
+
synRecv: "syn_recv",
|
|
361
|
+
|
|
362
|
+
@doc("SYN_SENT state")
|
|
363
|
+
synSent: "syn_sent",
|
|
364
|
+
|
|
365
|
+
@doc("TIME_WAIT state")
|
|
366
|
+
timeWait: "time_wait",
|
|
367
|
+
}
|
|
368
|
+
|
|
369
|
+
@doc("System paging states")
|
|
370
|
+
enum SystemPagingState {
|
|
371
|
+
@doc("Used")
|
|
372
|
+
used: "used",
|
|
373
|
+
|
|
374
|
+
@doc("Free")
|
|
375
|
+
free: "free",
|
|
376
|
+
}
|
|
377
|
+
|
|
378
|
+
@doc("System paging types")
|
|
379
|
+
enum SystemPagingType {
|
|
380
|
+
@doc("Major page fault")
|
|
381
|
+
major: "major",
|
|
382
|
+
|
|
383
|
+
@doc("Minor page fault")
|
|
384
|
+
minor: "minor",
|
|
385
|
+
}
|
|
386
|
+
|
|
387
|
+
@doc("System process status")
|
|
388
|
+
enum SystemProcessStatus {
|
|
389
|
+
@doc("Running")
|
|
390
|
+
running: "running",
|
|
391
|
+
|
|
392
|
+
@doc("Sleeping")
|
|
393
|
+
sleeping: "sleeping",
|
|
394
|
+
|
|
395
|
+
@doc("Stopped")
|
|
396
|
+
stopped: "stopped",
|
|
397
|
+
|
|
398
|
+
@doc("Defunct/zombie")
|
|
399
|
+
defunct: "defunct",
|
|
400
|
+
}
|