<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: UNKNOWN_METHOD_ERROR in HTTP monitor in Synthetic Monitoring</title>
    <link>https://community.dynatrace.com/t5/Synthetic-Monitoring/UNKNOWN-METHOD-ERROR-in-HTTP-monitor/m-p/249498#M2502</link>
    <description>&lt;P&gt;It looks like you are using &lt;SPAN&gt;CryptoJS.HmacSHA256&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;but haven' added this method to the pre-execution script. You can find information on adding this &lt;A href="https://community.dynatrace.com/t5/Troubleshooting/AES-Encryption-and-Decryption-in-Synthetic-HTTP-Monitor-using/ta-p/209462" target="_self"&gt;here&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
    <pubDate>Mon, 01 Jul 2024 11:17:51 GMT</pubDate>
    <dc:creator>HannahM</dc:creator>
    <dc:date>2024-07-01T11:17:51Z</dc:date>
    <item>
      <title>UNKNOWN_METHOD_ERROR in HTTP monitor</title>
      <link>https://community.dynatrace.com/t5/Synthetic-Monitoring/UNKNOWN-METHOD-ERROR-in-HTTP-monitor/m-p/245934#M2459</link>
      <description>&lt;P&gt;&lt;SPAN&gt;In every http monitor, my first call is always to get an auth token. This step works fine. I pass it in the second step as the 'jwt' in the pre-execution step. &lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;In two of my http monitors however, I also need to pass another&amp;nbsp; header in pre-execution called ###-Api-Key. I have to pass the request body to that call. That is my jsonData being stringified, then passed to const hash. That's then returned and added to the api.addHeader.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;I'm always getting the error UNKNOWN_METHOD_ERROR so hoping someone can take a look at this pre-execution script I've written, and help me get past this issue.&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;(Certain items changed for secure reasons)&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;Pre-execution script:&lt;/SPAN&gt;&lt;/P&gt;&lt;DIV&gt;const jsonData = [&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;{&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"messageType": "welcome",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"context": "urn:com:33333",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"messageTypeCode": 62,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"sendSMS": true,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"sendEmail": false,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"smokeTest": true,&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"bypassConsent": {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"countryCode": "+1",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"mainNumber": "3142083329"&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;},&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"referenceDetails": {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"referenceType": "Agree",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"referenceNumber": "33333",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"driverDetails": {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"firstName": "B",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"lastName": "N",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"communicationPreference": {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"locale": "en_US",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"source": "Location"&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;},&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"dateTime": "2023-01-17T04:29:00Z",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"brandCode": "##",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"brandName": "### ### ###"&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;},&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"locationDetails": {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"group": "0000",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"groupnumber": "00000",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"groupemail": "",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"timeZone": "America/Chicago",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"locationPrettyName": "City",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"preferredLanguage": "en",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"phone": {&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"countryCode": "+1",&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;"mainNumber": "2444444444"&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;&lt;SPAN&gt;}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;DIV&gt;];&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;api.setVariable("requestData", JSON.stringify(jsonData));&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;const TEST = 'LLLL';&lt;/DIV&gt;&lt;DIV&gt;const callingAppHeader = api.getHeader('###-Calling-Application');&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;let apiKey;&lt;/DIV&gt;&lt;DIV&gt;if (callingAppHeader &amp;amp;&amp;amp; callingAppHeader.toLowerCase() === TEST.toLowerCase()) {&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; const key = 'kdjflkadiowejfjkldfjs;kdlfj';&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; const hash = CryptoJS.HmacSHA256(api.getValue("requestData"), key);&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; apiKey = CryptoJS.enc.Base64.stringify(hash);&lt;/DIV&gt;&lt;DIV&gt;} else {&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp; apiKey = "Bearer " + api.getValue("jwt"); //jwt token from first step of this http monitor&lt;/DIV&gt;&lt;DIV&gt;}&lt;/DIV&gt;&lt;DIV&gt;&amp;nbsp;&lt;/DIV&gt;&lt;DIV&gt;api.addHeader('###-Api-Key', apiKey);&lt;/DIV&gt;&lt;DIV&gt;request.addHeader("Authorization", apiKey);&lt;/DIV&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;When looking at the execution details for more info on this error, I only get this:&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;//request&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;[&lt;BR /&gt;{&lt;BR /&gt;"requestId": "HTTP_CHECK_STEP-alpha-numericInfo",&lt;BR /&gt;"requestName": "send welcome message",&lt;BR /&gt;"sequenceNumber": 2,&lt;BR /&gt;"url": "",&lt;BR /&gt;"method": "",&lt;BR /&gt;"requestBody": "",&lt;BR /&gt;"requestHeaders": []&lt;BR /&gt;}&lt;BR /&gt;]&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;//response&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;[&lt;BR /&gt;{&lt;BR /&gt;"responseHeaders": [],&lt;BR /&gt;"responseBody": "",&lt;BR /&gt;"responseMessage": "",&lt;BR /&gt;"responseStatusCode": 0,&lt;BR /&gt;"responseSizeInBytes": 0,&lt;BR /&gt;"responseBodySizeLimitExceeded": false,&lt;BR /&gt;"failureMessage": ""&lt;BR /&gt;}&lt;BR /&gt;]&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;//execution&lt;/SPAN&gt;&lt;/P&gt;&lt;P&gt;&lt;SPAN&gt;[&lt;BR /&gt;{&lt;BR /&gt;"visitId": "numericInfo",&lt;BR /&gt;"resolvedIps": [],&lt;BR /&gt;"healthStatusCode": 18,&lt;BR /&gt;"healthStatus": "UNKNOWN_METHOD_ERROR",&lt;BR /&gt;"peerCertificateDetails": "",&lt;BR /&gt;"redirectsCount": 0,&lt;BR /&gt;"peerCertificateExpiryDate": 0,&lt;BR /&gt;"processingMode": "STANDARD"&lt;BR /&gt;}&lt;BR /&gt;]&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Fri, 17 May 2024 14:31:17 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Synthetic-Monitoring/UNKNOWN-METHOD-ERROR-in-HTTP-monitor/m-p/245934#M2459</guid>
      <dc:creator>kimberly_mirkes</dc:creator>
      <dc:date>2024-05-17T14:31:17Z</dc:date>
    </item>
    <item>
      <title>Re: UNKNOWN_METHOD_ERROR in HTTP monitor</title>
      <link>https://community.dynatrace.com/t5/Synthetic-Monitoring/UNKNOWN-METHOD-ERROR-in-HTTP-monitor/m-p/249498#M2502</link>
      <description>&lt;P&gt;It looks like you are using &lt;SPAN&gt;CryptoJS.HmacSHA256&amp;nbsp;&lt;/SPAN&gt;&lt;SPAN&gt;but haven' added this method to the pre-execution script. You can find information on adding this &lt;A href="https://community.dynatrace.com/t5/Troubleshooting/AES-Encryption-and-Decryption-in-Synthetic-HTTP-Monitor-using/ta-p/209462" target="_self"&gt;here&lt;/A&gt;&lt;/SPAN&gt;&lt;/P&gt;</description>
      <pubDate>Mon, 01 Jul 2024 11:17:51 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Synthetic-Monitoring/UNKNOWN-METHOD-ERROR-in-HTTP-monitor/m-p/249498#M2502</guid>
      <dc:creator>HannahM</dc:creator>
      <dc:date>2024-07-01T11:17:51Z</dc:date>
    </item>
    <item>
      <title>Re: UNKNOWN_METHOD_ERROR in HTTP monitor</title>
      <link>https://community.dynatrace.com/t5/Synthetic-Monitoring/UNKNOWN-METHOD-ERROR-in-HTTP-monitor/m-p/249514#M2508</link>
      <description>&lt;P&gt;This I did find a solution to, with the help of my Dynatrace team&lt;/P&gt;&lt;P&gt;In the pre-execution:&lt;/P&gt;&lt;P&gt;const jsonData=[{your data here}]&lt;/P&gt;&lt;P&gt;const stringData = JSON.stringify(jsonData);&lt;BR /&gt;request.setBody(stringData);&lt;/P&gt;&lt;P&gt;var CryptoJS=CryptoJS - HmacSHA256 code here&lt;/P&gt;&lt;P&gt;var CryptoJS=CryptoJS -&amp;nbsp;Base64 code here&lt;/P&gt;&lt;P&gt;const key = "your key here";&lt;/P&gt;&lt;P&gt;const hash = CryptoJS.HmacSHA256(stringData, key);&lt;BR /&gt;const b64Hash = CryptoJS.enc.Base64.stringify(hash);&lt;/P&gt;&lt;P&gt;request.addHeader('Api-Key', b64Hash);&lt;BR /&gt;request.addHeader("Authorization", "Bearer " + api.getValue("jwt"));&lt;/P&gt;&lt;P&gt;&amp;nbsp;&lt;/P&gt;</description>
      <pubDate>Mon, 01 Jul 2024 12:31:53 GMT</pubDate>
      <guid>https://community.dynatrace.com/t5/Synthetic-Monitoring/UNKNOWN-METHOD-ERROR-in-HTTP-monitor/m-p/249514#M2508</guid>
      <dc:creator>kimberly_mirkes</dc:creator>
      <dc:date>2024-07-01T12:31:53Z</dc:date>
    </item>
  </channel>
</rss>

