Is there a way to disable Ocp-Apim-Trace in the Azure API Management Services?
There is no way to disable tracing funtionality, not sending this header will disable tracing collection for one request only. But do know, that only admin users are capable of collecting traces, if this header is supplied along with subscription key that does not belong to admin account (or no subscription key at all) no traces will be collected. The idea here is that traces may expose information service owner may not be willing to share with developers.
As well as doing what Vitaliy suggests, you could additionally strip the Ocp-Apim-Trace-Location header from the response in the outbound and error sections as insurance.
Related
I've been using Azure API Management recently, and I would like to know if there is a way to detect the sign up process performed from the included Developer Portal.
Basically I need to be able to get the user unique id, to be able to map data stored in a database.
Is configuring Delegation the only way to capture this event?
Try to enable the Resource Logs, it includes the userId.
Reference - https://learn.microsoft.com/en-us/azure/api-management/api-management-howto-use-azure-monitor#resource-logs
The trace tab always says:
Trace location was not specified in the response or trace log is not available.
This is despite me passing both an Ocp-Apim-Subscription-Key and Ocp-Apim-Trace in the headers as described in the docs (https://learn.microsoft.com/en-us/azure/api-management/api-management-advanced-policies#Trace).
Yes, my subscription key is tied to an admin account of the Api-m instance. The key, however, is tied to a product which holds the underlying Api. Does that make any difference?
Anyone else encountered this issue?
The subscription key of the product that is associated with this API that the developer can use the keys in it to access all APIs in the product.
API Inspector traces are only generated and made available for requests containing subscription keys that belong to the administrator account.
You can get the admin subscription key in Developer Portal -> Profile -> find your API and subscription key.
In the response headers will be an ocp-apim-trace-location, for more details you could refer to this article.
I'm using Application insights with API-Management to monitor my API's. Application Insights is great tool but I'm not able to see body.
I want to see Post request body parameter. Is there any way to add body data on application insights??
You have to configure API Management to log the request payload to Application Insights. See here: Enable Application Insights logging for your API
Navigate to your Azure API Management service instance in the Azure portal.
Select APIs from the menu on the left.
Click on your API.
Go to the Settings tab from the top bar.
Scroll down to the Diagnostics Logs section.
Check the Enable box.
Select your attached logger in the Destination dropdown.
Input 100 as Sampling (%) and tick the Always log errors checkbox.
Under Additional settings, configure up to 8192 bytes of the payload to be logged.
Click Save.
I can't do code changes in existing api. any option without code change would help me
Unfortunately, it is not supported by Application Insights.
I also find the feedback, you could vote it.
It now supports custom Telemetry Initializer as I have shown to you.
This is not supported at the moment. APIM is not exposing Telemetry Initializers to the customer instead it will be providing custom options added to the diagnostic entity that will allow you to control sampling, verbosity and ability to log headers. Body is still being debated. Will user want to see response body returned from backend or sent to client? Body can be modified at different stages. Alternatively, you can use Log-To-EventHub and have the ability to place it at specific points of pipeline. Another idea being considered is Log-To-ApplicationInsights.
Note: Adding for more data to Application Insights takes hit on APIM perf.
The simplest way (ok, the only way I've gotten it to work) would be to log the body yourself using the AppInsights SDK.
According to GitHub, the more recent AppInsights SDKs have initializers running after processing when the stream is closed.
I had configured an Incoming Webhook on one of our Microsoft Teams channels, but noticed it stopped working recently, and also I am no longer able to find the Incoming Webhook in the list of connectors:
What command would I need to have our Administrators run or what configuration would I need to apply to get this to work again?
As #wajeed-msft notes, this is happening because your administrator turned off access to external applications.
Assuming "Allow sideloading of external apps" is also turned off you'll get the list on the page you found above. If you scroll through that list, you will see "Incoming webhook" listed.
I had the same problem and I didn't remember that I (as a Tenant admin) disabled anything in the portal. "Unfortunatly" the screenshot is from the older portal, in the new Teams Admin check the following:
All available connectors were somehow blocked, so I removed everything from the "blocked apps" list:
Then I needed to sign out ("Quit" didn't refresh those settings) and sign in again and now I have access to all connectors.
For webhook connector, you can use the incoming webhook connector in MS teams app sections.
For more information please refer this link
I am getting below error while accessing DocuSign SOAP service using SOAP UI tool. I also tried using integration key in username [Integration Key]userguid format I got same exception.
Can you please help me to resolve this issue.
Ok I've found out which option it is, and have enabled this option on your account. You should be able to export authoritative copies from this account now. For reference sake, the option I enabled was a member setting called
Can Export Authoritative Copies?
Please note, though, that since this is a setting that we have to enable on DocuSign's side, that means that it might be an enterprise or workgroup level feature. On your demo account we enable whatever you like so you can test things out, however when you are ready to move to production and purchase a corresponding production account that uses the API, you'll need to make sure you purchase an account that allows this feature. You can find out more from your Account Manager.