@@ -21,63 +21,159 @@ describe('MongoDB experimental Test', () => {
21
21
22
22
const EXPECTED_TRANSACTION = {
23
23
transaction : 'Test Transaction' ,
24
- spans : expect . arrayContaining ( [
24
+ spans : [
25
25
expect . objectContaining ( {
26
- data : expect . objectContaining ( {
26
+ data : {
27
+ 'sentry.origin' : 'auto.db.otel.mongo' ,
28
+ 'sentry.op' : 'db' ,
29
+ 'db.system' : 'mongodb' ,
30
+ 'db.name' : 'admin' ,
31
+ 'db.mongodb.collection' : '$cmd' ,
32
+ 'db.operation' : 'isMaster' ,
33
+ 'db.connection_string' : expect . any ( String ) ,
34
+ 'net.peer.name' : expect . any ( String ) ,
35
+ 'net.peer.port' : expect . any ( Number ) ,
36
+ 'db.statement' :
37
+ '{"ismaster":"?","client":{"driver":{"name":"?","version":"?"},"os":{"type":"?","name":"?","architecture":"?","version":"?"},"platform":"?"},"compression":[],"helloOk":"?"}' ,
38
+ 'otel.kind' : 'CLIENT' ,
39
+ } ,
40
+ description :
41
+ '{"ismaster":"?","client":{"driver":{"name":"?","version":"?"},"os":{"type":"?","name":"?","architecture":"?","version":"?"},"platform":"?"},"compression":[],"helloOk":"?"}' ,
42
+ op : 'db' ,
43
+ origin : 'auto.db.otel.mongo' ,
44
+ } ) ,
45
+ expect . objectContaining ( {
46
+ data : {
47
+ 'sentry.origin' : 'auto.db.otel.mongo' ,
48
+ 'sentry.op' : 'db' ,
49
+ 'db.system' : 'mongodb' ,
50
+ 'db.name' : 'admin' ,
51
+ 'db.mongodb.collection' : '$cmd' ,
52
+ 'db.operation' : 'isMaster' ,
53
+ 'db.connection_string' : expect . any ( String ) ,
54
+ 'net.peer.name' : expect . any ( String ) ,
55
+ 'net.peer.port' : expect . any ( Number ) ,
56
+ 'db.statement' :
57
+ '{"ismaster":"?","client":{"driver":{"name":"?","version":"?"},"os":{"type":"?","name":"?","architecture":"?","version":"?"},"platform":"?"},"compression":[],"helloOk":"?"}' ,
58
+ 'otel.kind' : 'CLIENT' ,
59
+ } ,
60
+ description :
61
+ '{"ismaster":"?","client":{"driver":{"name":"?","version":"?"},"os":{"type":"?","name":"?","architecture":"?","version":"?"},"platform":"?"},"compression":[],"helloOk":"?"}' ,
62
+ op : 'db' ,
63
+ origin : 'auto.db.otel.mongo' ,
64
+ } ) ,
65
+ expect . objectContaining ( {
66
+ data : {
67
+ 'sentry.origin' : 'auto.db.otel.mongo' ,
68
+ 'sentry.op' : 'db' ,
27
69
'db.system' : 'mongodb' ,
28
70
'db.name' : 'admin' ,
29
- 'db.operation' : 'insert' ,
30
71
'db.mongodb.collection' : 'movies' ,
31
- } ) ,
32
- description : '{"title":"?","_id":"?"}' ,
72
+ 'db.operation' : 'insert' ,
73
+ 'db.connection_string' : expect . any ( String ) ,
74
+ 'net.peer.name' : expect . any ( String ) ,
75
+ 'net.peer.port' : expect . any ( Number ) ,
76
+ 'db.statement' :
77
+ '{"title":"?","_id":{"_bsontype":"?","id":{"0":"?","1":"?","2":"?","3":"?","4":"?","5":"?","6":"?","7":"?","8":"?","9":"?","10":"?","11":"?"}}}' ,
78
+ 'otel.kind' : 'CLIENT' ,
79
+ } ,
80
+ description :
81
+ '{"title":"?","_id":{"_bsontype":"?","id":{"0":"?","1":"?","2":"?","3":"?","4":"?","5":"?","6":"?","7":"?","8":"?","9":"?","10":"?","11":"?"}}}' ,
33
82
op : 'db' ,
34
83
origin : 'auto.db.otel.mongo' ,
35
84
} ) ,
36
85
expect . objectContaining ( {
37
- data : expect . objectContaining ( {
86
+ data : {
87
+ 'sentry.origin' : 'auto.db.otel.mongo' ,
88
+ 'sentry.op' : 'db' ,
38
89
'db.system' : 'mongodb' ,
39
90
'db.name' : 'admin' ,
40
- 'db.operation' : 'find' ,
41
91
'db.mongodb.collection' : 'movies' ,
42
- } ) ,
92
+ 'db.operation' : 'find' ,
93
+ 'db.connection_string' : expect . any ( String ) ,
94
+ 'net.peer.name' : expect . any ( String ) ,
95
+ 'net.peer.port' : expect . any ( Number ) ,
96
+ 'db.statement' : '{"title":"?"}' ,
97
+ 'otel.kind' : 'CLIENT' ,
98
+ } ,
43
99
description : '{"title":"?"}' ,
44
100
op : 'db' ,
45
101
origin : 'auto.db.otel.mongo' ,
46
102
} ) ,
47
103
expect . objectContaining ( {
48
- data : expect . objectContaining ( {
104
+ data : {
105
+ 'sentry.origin' : 'auto.db.otel.mongo' ,
106
+ 'sentry.op' : 'db' ,
49
107
'db.system' : 'mongodb' ,
50
108
'db.name' : 'admin' ,
51
- 'db.operation' : 'update' ,
52
109
'db.mongodb.collection' : 'movies' ,
53
- } ) ,
110
+ 'db.operation' : 'update' ,
111
+ 'db.connection_string' : expect . any ( String ) ,
112
+ 'net.peer.name' : expect . any ( String ) ,
113
+ 'net.peer.port' : expect . any ( Number ) ,
114
+ 'db.statement' : '{"title":"?"}' ,
115
+ 'otel.kind' : 'CLIENT' ,
116
+ } ,
54
117
description : '{"title":"?"}' ,
55
118
op : 'db' ,
56
119
origin : 'auto.db.otel.mongo' ,
57
120
} ) ,
58
121
expect . objectContaining ( {
59
- data : expect . objectContaining ( {
122
+ data : {
123
+ 'sentry.origin' : 'auto.db.otel.mongo' ,
124
+ 'sentry.op' : 'db' ,
60
125
'db.system' : 'mongodb' ,
61
126
'db.name' : 'admin' ,
62
- 'db.operation' : 'find' ,
63
127
'db.mongodb.collection' : 'movies' ,
64
- } ) ,
128
+ 'db.operation' : 'find' ,
129
+ 'db.connection_string' : expect . any ( String ) ,
130
+ 'net.peer.name' : expect . any ( String ) ,
131
+ 'net.peer.port' : expect . any ( Number ) ,
132
+ 'db.statement' : '{"title":"?"}' ,
133
+ 'otel.kind' : 'CLIENT' ,
134
+ } ,
65
135
description : '{"title":"?"}' ,
66
136
op : 'db' ,
67
137
origin : 'auto.db.otel.mongo' ,
68
138
} ) ,
69
139
expect . objectContaining ( {
70
- data : expect . objectContaining ( {
140
+ data : {
141
+ 'sentry.origin' : 'auto.db.otel.mongo' ,
142
+ 'sentry.op' : 'db' ,
71
143
'db.system' : 'mongodb' ,
72
144
'db.name' : 'admin' ,
73
- 'db.operation' : 'find' ,
74
145
'db.mongodb.collection' : 'movies' ,
75
- } ) ,
146
+ 'db.operation' : 'find' ,
147
+ 'db.connection_string' : expect . any ( String ) ,
148
+ 'net.peer.name' : expect . any ( String ) ,
149
+ 'net.peer.port' : expect . any ( Number ) ,
150
+ 'db.statement' : '{"title":"?"}' ,
151
+ 'otel.kind' : 'CLIENT' ,
152
+ } ,
76
153
description : '{"title":"?"}' ,
77
154
op : 'db' ,
78
155
origin : 'auto.db.otel.mongo' ,
79
156
} ) ,
80
- ] ) ,
157
+ expect . objectContaining ( {
158
+ data : {
159
+ 'sentry.origin' : 'auto.db.otel.mongo' ,
160
+ 'sentry.op' : 'db' ,
161
+ 'db.system' : 'mongodb' ,
162
+ 'db.name' : 'admin' ,
163
+ 'db.mongodb.collection' : '$cmd' ,
164
+ 'db.connection_string' : expect . any ( String ) ,
165
+ 'net.peer.name' : expect . any ( String ) ,
166
+ 'net.peer.port' : expect . any ( Number ) ,
167
+ 'db.statement' :
168
+ '{"endSessions":[{"id":{"_bsontype":"?","sub_type":"?","position":"?","buffer":{"0":"?","1":"?","2":"?","3":"?","4":"?","5":"?","6":"?","7":"?","8":"?","9":"?","10":"?","11":"?","12":"?","13":"?","14":"?","15":"?"}}}]}' ,
169
+ 'otel.kind' : 'CLIENT' ,
170
+ } ,
171
+ description :
172
+ '{"endSessions":[{"id":{"_bsontype":"?","sub_type":"?","position":"?","buffer":{"0":"?","1":"?","2":"?","3":"?","4":"?","5":"?","6":"?","7":"?","8":"?","9":"?","10":"?","11":"?","12":"?","13":"?","14":"?","15":"?"}}}]}' ,
173
+ op : 'db' ,
174
+ origin : 'auto.db.otel.mongo' ,
175
+ } ) ,
176
+ ] ,
81
177
} ;
82
178
83
179
test ( 'CJS - should auto-instrument `mongodb` package.' , done => {
0 commit comments