1+ oats-schema-version : 2
12include :
23 - ./oats-template.yml
34input :
1112expected :
1213 logs :
1314 - logql : ' { service_name="aspnetcore" } |~ `Application started.`'
14- contains :
15- - ' Application started'
15+ regexp : ' Application started'
1616 metrics :
1717 - promql : db_client_operation_duration_seconds_count{}
1818 value : ' >= 0'
@@ -24,75 +24,71 @@ expected:
2424 value : ' >= 1'
2525 traces :
2626 - traceql : ' { resource.process.pid > 0 }'
27- spans :
28- - name : ' GET'
27+ equals : ' GET'
2928 - traceql : ' { span.http.route =~ "api/HttpClient/Get" }'
30- spans :
31- - name : ' GET api/HttpClient/Get'
32- attributes :
33- http.request.method : GET
34- - name : ' GET api/HttpClient/Get'
35- attributes :
36- service.name : aspnetcore
37- service.version : 1.0.0.0
38- telemetry.distro.name : grafana-opentelemetry-dotnet
39- telemetry.distro.version : regex:.+
40- deployment.environment : production
41- process.runtime.description : regex:.NET.+
42- process.runtime.name : .NET
43- process.runtime.version : regex:.+
44- host.name : regex:.+
45- telemetry.sdk.name : opentelemetry
46- telemetry.sdk.language : dotnet
47- telemetry.sdk.version : regex:.+
29+ equals : ' GET api/HttpClient/Get'
30+ attributes :
31+ http.request.method : GET
32+ - traceql : ' { span.http.route =~ "api/HttpClient/Get" }'
33+ equals : ' GET api/HttpClient/Get'
34+ attributes :
35+ service.name : aspnetcore
36+ service.version : 1.0.0.0
37+ telemetry.distro.name : grafana-opentelemetry-dotnet
38+ deployment.environment : production
39+ process.runtime.name : .NET
40+ telemetry.sdk.name : opentelemetry
41+ telemetry.sdk.language : dotnet
42+ attribute-regexp :
43+ host.name : .+
44+ process.runtime.description : .NET.+
45+ process.runtime.version : .+
46+ telemetry.distro.version : .+
47+ telemetry.sdk.version : .+
48+ - traceql : ' { span.http.route =~ "api/HttpClient/GetError" }'
49+ equals : ' GET api/HttpClient/GetError'
50+ attributes :
51+ http.request.method : GET
4852 - traceql : ' { span.http.route =~ "api/HttpClient/GetError" }'
49- spans :
50- - name : ' GET api/HttpClient/GetError'
51- attributes :
52- http.request.method : GET
53- - name : ' GET'
54- attributes :
55- error.type : ' 500'
56- http.request.method : GET
57- http.response.status_code : ' 500'
53+ equals : ' GET'
54+ attributes :
55+ error.type : ' 500'
56+ http.request.method : GET
57+ http.response.status_code : 500
5858 - traceql : ' { span.http.route =~ "api/MsSql/ServerInfo" }'
59- spans :
60- - name : ' master'
61- attributes :
62- db.system : mssql
63- db.name : master
64- db.statement : sp_server_info
65- otel.library.name : OpenTelemetry.Instrumentation.SqlClient
59+ equals : ' master'
60+ attributes :
61+ db.system : mssql
62+ db.name : master
63+ db.statement : sp_server_info
64+ otel.library.name : OpenTelemetry.Instrumentation.SqlClient
6665 - traceql : ' { span.http.route =~ "api/MsSql/Tables" }'
67- spans :
68- - name : ' master'
69- attributes :
70- db.system : mssql
71- db.name : master
72- otel.library.name : OpenTelemetry.Instrumentation.SqlClient
66+ equals : ' master'
67+ attributes :
68+ db.system : mssql
69+ db.name : master
70+ otel.library.name : OpenTelemetry.Instrumentation.SqlClient
7371 - traceql : ' { span.http.route =~ "api/Redis/LeftPush" }'
74- spans :
75- - name : ' LPUSH'
76- attributes :
77- db.statement : LPUSH
78- db.system : redis
79- db.redis.database_index : ' 0'
80- server.address : redis
72+ equals : ' LPUSH'
73+ attributes :
74+ db.statement : LPUSH
75+ db.system : redis
76+ db.redis.database_index : ' 0'
77+ server.address : redis
8178 - traceql : ' { span.http.route =~ "/api/todo/items/" }'
82- spans :
83- - name : ' main'
84- allow-duplicates : true
85- attributes :
86- db.system : sqlite
87- db.name : main
88- peer.service : /app/App_Data/TodoApp.db
89- otel.library.name : OpenTelemetry.Instrumentation.EntityFrameworkCore
79+ equals : ' main'
80+ allow-duplicates : true
81+ attributes :
82+ db.system : sqlite
83+ db.name : main
84+ peer.service : /app/App_Data/TodoApp.db
85+ otel.library.name : OpenTelemetry.Instrumentation.EntityFrameworkCore
9086 - traceql : ' { span.http.route =~ "api/Aws/ListBuckets" }'
91- spans :
92- - name : ' S3.ListBuckets '
93- attributes :
94- aws.request_id : regex:.+
95- otel.library.name : AWSSDK. S3
96- rpc.method : ListBuckets
97- rpc.service : S3
98- rpc.system : aws-api
87+ equals : ' S3.ListBuckets '
88+ attributes :
89+ otel.library.name : AWSSDK.S3
90+ rpc.method : ListBuckets
91+ rpc.service : S3
92+ rpc.system : aws-api
93+ attribute-regexp :
94+ aws.request_id : .+
0 commit comments