1[ 2 { 3 "name": "Successful GET call to https://example.com", 4 "method": "GET", 5 "url": "https://example.com/", 6 "spanName": "/", 7 "spanStatus": "OK", 8 "spanKind": "Client", 9 "spanAttributes": { 10 "http.path": "/", 11 "http.method": "GET", 12 "http.host": "example.com", 13 "http.status_code": "200", 14 "http.url": "https://example.com/" 15 } 16 }, 17 { 18 "name": "Successfully POST call to https://example.com", 19 "method": "POST", 20 "url": "https://example.com/", 21 "spanName": "/", 22 "spanStatus": "OK", 23 "spanKind": "Client", 24 "spanAttributes": { 25 "http.path": "/", 26 "http.method": "POST", 27 "http.host": "example.com", 28 "http.status_code": "200", 29 "http.url": "https://example.com/" 30 } 31 }, 32 { 33 "name": "Name is populated as a path", 34 "method": "GET", 35 "url": "http://{host}:{port}/path/to/resource/", 36 "responseCode": 200, 37 "spanName": "/path/to/resource/", 38 "spanStatus": "OK", 39 "spanKind": "Client", 40 "spanAttributes": { 41 "http.path": "/path/to/resource/", 42 "http.method": "GET", 43 "http.host": "{host}:{port}", 44 "http.status_code": "200", 45 "http.url": "http://{host}:{port}/path/to/resource/" 46 } 47 }, 48 { 49 "name": "Call that cannot resolve DNS will be reported as error span", 50 "method": "GET", 51 "url": "https://sdlfaldfjalkdfjlkajdflkajlsdjf.sdlkjafsdjfalfadslkf.com/", 52 "spanName": "/", 53 "spanStatus": "UNKNOWN", 54 "spanKind": "Client", 55 "spanAttributes": { 56 "http.path": "/", 57 "http.method": "GET", 58 "http.host": "sdlfaldfjalkdfjlkajdflkajlsdjf.sdlkjafsdjfalfadslkf.com", 59 "http.url": "https://sdlfaldfjalkdfjlkajdflkajlsdjf.sdlkjafsdjfalfadslkf.com/" 60 } 61 }, 62 { 63 "name": "Response code: 199. This test case is not possible to implement on some platforms as they don't allow to return this status code. Keeping this test case for visibility, but it actually simply a fallback into 200 test case", 64 "method": "GET", 65 "url": "http://{host}:{port}/", 66 "responseCode": 200, 67 "spanName": "/", 68 "spanStatus": "OK", 69 "spanKind": "Client", 70 "spanAttributes": { 71 "http.path": "/", 72 "http.method": "GET", 73 "http.host": "{host}:{port}", 74 "http.status_code": "200", 75 "http.url": "http://{host}:{port}/" 76 } 77 }, 78 { 79 "name": "Response code: 200", 80 "method": "GET", 81 "url": "http://{host}:{port}/", 82 "responseCode": 200, 83 "spanName": "/", 84 "spanStatus": "OK", 85 "spanKind": "Client", 86 "spanAttributes": { 87 "http.path": "/", 88 "http.method": "GET", 89 "http.host": "{host}:{port}", 90 "http.status_code": "200", 91 "http.url": "http://{host}:{port}/" 92 } 93 }, 94 { 95 "name": "Response code: 399", 96 "method": "GET", 97 "url": "http://{host}:{port}/", 98 "responseCode": 399, 99 "spanName": "/", 100 "spanStatus": "OK", 101 "spanKind": "Client", 102 "spanAttributes": { 103 "http.path": "/", 104 "http.method": "GET", 105 "http.host": "{host}:{port}", 106 "http.status_code": "399", 107 "http.url": "http://{host}:{port}/" 108 } 109 }, 110 { 111 "name": "Response code: 400", 112 "method": "GET", 113 "url": "http://{host}:{port}/", 114 "responseCode": 400, 115 "spanName": "/", 116 "spanStatus": "INVALID_ARGUMENT", 117 "spanKind": "Client", 118 "spanAttributes": { 119 "http.path": "/", 120 "http.method": "GET", 121 "http.host": "{host}:{port}", 122 "http.status_code": "400", 123 "http.url": "http://{host}:{port}/" 124 } 125 }, 126 { 127 "name": "Response code: 401", 128 "method": "GET", 129 "url": "http://{host}:{port}/", 130 "responseCode": 401, 131 "spanName": "/", 132 "spanStatus": "UNAUTHENTICATED", 133 "spanKind": "Client", 134 "spanAttributes": { 135 "http.path": "/", 136 "http.method": "GET", 137 "http.host": "{host}:{port}", 138 "http.status_code": "401", 139 "http.url": "http://{host}:{port}/" 140 } 141 }, 142 { 143 "name": "Response code: 403", 144 "method": "GET", 145 "url": "http://{host}:{port}/", 146 "responseCode": 403, 147 "spanName": "/", 148 "spanStatus": "PERMISSION_DENIED", 149 "spanKind": "Client", 150 "spanAttributes": { 151 "http.path": "/", 152 "http.method": "GET", 153 "http.host": "{host}:{port}", 154 "http.status_code": "403", 155 "http.url": "http://{host}:{port}/" 156 } 157 }, 158 { 159 "name": "Response code: 404", 160 "method": "GET", 161 "url": "http://{host}:{port}/", 162 "responseCode": 404, 163 "spanName": "/", 164 "spanStatus": "NOT_FOUND", 165 "spanKind": "Client", 166 "spanAttributes": { 167 "http.path": "/", 168 "http.method": "GET", 169 "http.host": "{host}:{port}", 170 "http.status_code": "404", 171 "http.url": "http://{host}:{port}/" 172 } 173 }, 174 { 175 "name": "Response code: 429", 176 "method": "GET", 177 "url": "http://{host}:{port}/", 178 "responseCode": 429, 179 "spanName": "/", 180 "spanStatus": "RESOURCE_EXHAUSTED", 181 "spanKind": "Client", 182 "spanAttributes": { 183 "http.path": "/", 184 "http.method": "GET", 185 "http.host": "{host}:{port}", 186 "http.status_code": "429", 187 "http.url": "http://{host}:{port}/" 188 } 189 }, 190 { 191 "name": "Response code: 501", 192 "method": "GET", 193 "url": "http://{host}:{port}/", 194 "responseCode": 501, 195 "spanName": "/", 196 "spanStatus": "UNIMPLEMENTED", 197 "spanKind": "Client", 198 "spanAttributes": { 199 "http.path": "/", 200 "http.method": "GET", 201 "http.host": "{host}:{port}", 202 "http.status_code": "501", 203 "http.url": "http://{host}:{port}/" 204 } 205 }, 206 { 207 "name": "Response code: 503", 208 "method": "GET", 209 "url": "http://{host}:{port}/", 210 "responseCode": 503, 211 "spanName": "/", 212 "spanStatus": "UNAVAILABLE", 213 "spanKind": "Client", 214 "spanAttributes": { 215 "http.path": "/", 216 "http.method": "GET", 217 "http.host": "{host}:{port}", 218 "http.status_code": "503", 219 "http.url": "http://{host}:{port}/" 220 } 221 }, 222 { 223 "name": "Response code: 504", 224 "method": "GET", 225 "url": "http://{host}:{port}/", 226 "responseCode": 504, 227 "spanName": "/", 228 "spanStatus": "DEADLINE_EXCEEDED", 229 "spanKind": "Client", 230 "spanAttributes": { 231 "http.path": "/", 232 "http.method": "GET", 233 "http.host": "{host}:{port}", 234 "http.status_code": "504", 235 "http.url": "http://{host}:{port}/" 236 } 237 }, 238 { 239 "name": "Response code: 600", 240 "method": "GET", 241 "url": "http://{host}:{port}/", 242 "responseCode": 600, 243 "spanName": "/", 244 "spanStatus": "UNKNOWN", 245 "spanKind": "Client", 246 "spanAttributes": { 247 "http.path": "/", 248 "http.method": "GET", 249 "http.host": "{host}:{port}", 250 "http.status_code": "600", 251 "http.url": "http://{host}:{port}/" 252 } 253 }, 254 { 255 "name": "User agent attribute populated", 256 "method": "GET", 257 "url": "http://{host}:{port}/", 258 "headers": { 259 "User-Agent": "test-user-agent" 260 }, 261 "responseCode": 200, 262 "spanName": "/", 263 "spanStatus": "OK", 264 "spanKind": "Client", 265 "spanAttributes": { 266 "http.path": "/", 267 "http.method": "GET", 268 "http.host": "{host}:{port}", 269 "http.status_code": "200", 270 "http.user_agent": "test-user-agent", 271 "http.url": "http://{host}:{port}/" 272 } 273 } 274 ]