Dynatrace / xk6-output-dynatrace

repo for the k6 extension
6 stars 4 forks source link

Metrics for http_req_connecting http_req_duration and few more are not sent to Dynatrace #5

Open kumardushyant opened 1 year ago

kumardushyant commented 1 year ago

Describe the bug When using this extension, I see few metrics is generated as

k6.http_reqs,tls_version="tls1.2",status="404",name="https://petstore.swagger.io/v2/pet/9223372036854284000",expected_response="false",error_code="1404",url="https://petstore.swagger.io/v2/pet/9223372036854284000",scenario="scenario",proto="HTTP/2.0",method="GET",group="::Scenario: "scenario01"::Test:::The pet id:9223372036854284000 does not exist in the store"  1 1683259839240
k6.http_req_duration,method="GET",expected_response="false",url="https://petstore.swagger.io/v2/pet/9223372036854284000",scenario="scenario",proto="HTTP/2.0",group="::Scenario: "scenario01"::Test:::The pet id:9223372036854284000 does not exist in the store",error_code="1404",tls_version="tls1.2",status="404",name="https://petstore.swagger.io/v2/pet/9223372036854284000"  227.731076 1683259839240
k6.http_req_blocked,url="https://petstore.swagger.io/v2/pet/9223372036854284000",tls_version="tls1.2",group="::Scenario: "scenario01"::Test:::The pet id:9223372036854284000 does not exist in the store",expected_response="false",error_code="1404",status="404",scenario="scenario",proto="HTTP/2.0",name="https://petstore.swagger.io/v2/pet/9223372036854284000",method="GET"  0.000234 1683259839240
k6.http_req_connecting,tls_version="tls1.2",status="404",proto="HTTP/2.0",error_code="1404",url="https://petstore.swagger.io/v2/pet/9223372036854284000",scenario="scenario",name="https://petstore.swagger.io/v2/pet/9223372036854284000",method="GET",group="::Scenario: "scenario01"::Test:::The pet id:9223372036854284000 does not exist in the store",expected_response="false"  0 1683259839240
k6.http_req_tls_handshaking,status="404",proto="HTTP/2.0",method="GET",expected_response="false",error_code="1404",tls_version="tls1.2",scenario="scenario",name="https://petstore.swagger.io/v2/pet/9223372036854284000",group="::Scenario: "scenario01"::Test:::The pet id:9223372036854284000 does not exist in the store",url="https://petstore.swagger.io/v2/pet/9223372036854284000"  0 1683259839240
k6.http_req_sending,tls_version="tls1.2",method="GET",name="https://petstore.swagger.io/v2/pet/9223372036854284000",group="::Scenario: "scenario01"::Test:::The pet id:9223372036854284000 does not exist in the store",expected_response="false",error_code="1404",url="https://petstore.swagger.io/v2/pet/9223372036854284000",status="404",scenario="scenario",proto="HTTP/2.0"  0.07995 1683259839240
k6.http_req_waiting,status="404",proto="HTTP/2.0",method="GET",group="::Scenario: "scenario01"::Test:::The pet id:9223372036854284000 does not exist in the store",url="https://petstore.swagger.io/v2/pet/9223372036854284000",tls_version="tls1.2",scenario="scenario",name="https://petstore.swagger.io/v2/pet/9223372036854284000",expected_response="false",error_code="1404"  227.580363 1683259839240
k6.http_req_receiving,error_code="1404",tls_version="tls1.2",expected_response="false",scenario="scenario",proto="HTTP/2.0",name="https://petstore.swagger.io/v2/pet/9223372036854284000",method="GET",group="::Scenario: "scenario01"::Test:::The pet id:9223372036854284000 does not exist in the store",url="https://petstore.swagger.io/v2/pet/9223372036854284000",status="404"  0.070763 1683259839240
k6.http_req_failed,tls_version="tls1.2",group="::Scenario: "scenario01"::Test:::The pet id:9223372036854284000 does not exist in the store",expected_response="false",proto="HTTP/2.0",name="https://petstore.swagger.io/v2/pet/9223372036854284000",method="GET",error_code="1404",url="https://petstore.swagger.io/v2/pet/9223372036854284000",status="404",scenario="scenario"  1 1683259839240

This causes upload to Dynatrace fail with error

{"linesOk":11,"linesInvalid":31,"error":{"code":400,"message":"First 10 errors reported","invalidLines":[{"line":1,"error":"failed to parse dimension value of message 'k6.http_reqs,tls_version=\"tls1.2[...]thod=\"GET\",group=\"::Scenario: \"s'; error at 's'  (index 258)"},{
  "linesOk": 11,
  "linesInvalid": 31,
  "error": {
    "code": 400,
    "message": "First 10 errors reported",
    "invalidLines": [
      {
        "line": 1,
        "error": "failed to parse dimension value of message 'k6.http_reqs,tls_version=\"tls1.2[...]thod=\"GET\",group=\"::Scenario: \"s'; error at 's'  (index 258)"
      },
      {
        "line": 2,
        "error": "failed to parse dimension value of message 'k6.http_req_duration,expected_re[...]854284000\",group=\"::Scenario: \"s'; error at 's'  (index 241)"
      },
      {
        "line": 3,
        "error": "failed to parse dimension value of message 'k6.http_req_blocked,url=\"https:/[...]\"scenario\",group=\"::Scenario: \"s'; error at 's'  (index 247)"
      },
      {
        "line": 4,
        "error": "failed to parse dimension value of message 'k6.http_req_connecting,url=\"http[...]\"scenario\",group=\"::Scenario: \"s'; error at 's'  (index 124)"
      },
      {
        "line": 5,
        "error": "failed to parse dimension value of message 'k6.http_req_tls_handshaking,url=[...]ode=\"1404\",group=\"::Scenario: \"s'; error at 's'  (index 160)"
      },
      {
        "line": 6,
        "error": "failed to parse dimension value of message 'k6.http_req_sending,url=\"https:/[...]\"HTTP/2.0\",group=\"::Scenario: \"s'; error at 's'  (index 118)"
      },
      {
        "line": 7,
        "error": "failed to parse dimension value of message 'k6.http_req_waiting,expected_res[...]854284000\",group=\"::Scenario: \"s'; error at 's'  (index 167)"
      },
      {
        "line": 8,
        "error": "failed to parse dimension value of message 'k6.http_req_receiving,url=\"https[...]854284000\",group=\"::Scenario: \"s'; error at 's'  (index 267)"
      },
      {
        "line": 9,
        "error": "failed to parse dimension value of message 'k6.http_req_failed,method=\"GET\",group=\"::Scenario: \"scenario01\":'; error at 's'  (index 52)"
      },
      {
        "line": 10,
        "error": "failed to parse dimension value of message 'k6.error_rate,scenario=\"scenario\",group=\"::Scenario: \"scenario01'; error at 's'  (index 54)"
      }
    ]
  },
  "warnings": null
}

Expected behavior Parse of K6 results should be able to get correct metrics to upload to Dynatrace

Desktop (please complete the following information):