how handle error in Logic app error handle - azure

I like to configure logic app is there is any failure inside it and then it has to sent email alert there failure into logic app.
Please help in that. If you did the same please sent it with sample screen.

I have created a sample flow with parallel flows where both receives error. I have created a variable and appended the errors of each of the flow to the string variable. Finally, I have sent the resultant string to email. Below is the flow of my logic app.
RESULTS :
IN MY EMAIL :

Related

Azure functions Response Body is missing in Logic Apps

I am processing data from Event Hub. Whenever events are available in event hub series of azure functions are called sequentially to processes the data.
function A is using event data as input --> function B is using output of function A as an input and likewise 2 more functions are there.
Response body is missing in only one function (same, ex.: function B in picture) in some iterations.
Sometimes response body for one of the azure function is missing however response code is 200. I have logged the response body in azure function before returning the response and it(response body) is present in logs.
What can be the reason of not getting the response body.
In the attached image Function B is having this issue.
Update: After adding concurrency control to 1(So that it runs sequentially) issue is resolved however again after removing concurrency control issue is coming. What can be the issue ?
One of the workaround you can follow to resolve the above issue,
Make sure that all of the azure function has been created in the same region that might be the reason for not getting the request body for one function and getting for others.
Would suggest you to create Azure logic app and functions in the same region.
Another workaround is to provide the content type in your event hub to application/json if still having the same the try to set text/plain.
For more information please refer this MICROSOFT DOCUMENTATION| Receive and respond to inbound HTTPS requests in Azure Logic Apps
For the similar issue please refer this MS Q&A| Http Webhook Outputs does not have body content, only headers .

DocuSign website cant call webhook listener

I try to receive signed file from Docusing using web hook listener, before it working file , but form 31-05-2022 Docusing cant call our web hook listener.
When i check log from Connect menu, i got this error on bottom
6/22/2022 | 3:52:07 pm
Error: Exception in EnvelopeIntegration.RunIntegration: ac08432f-18c4-471d-8720-caaf78fe4dfc :: No URI :: Error - Invalid URI: The URI is empty.;
This is the code i pass web hook listener url.
Dim eventNotification = New EventNotification()
eveventNotification.Url ="https://www.sample.com/webhook/default.aspx"
eventNotification.RequireAcknowledgment = "true"
eventNotification.IncludeDocuments = "true"
eventNotification.LoggingEnabled = "true"
May i know exact problem ? This final success receive from web listener is 5/30/2022, after that all are failure.
Thanks and Regards
Aravind
This error typically means you're using envelope-level EventNotifications, but you're not actually defining a valid url parameter when you're sending an envelope.
You'll want to check your Envelope Definition in your code, but you can also use API Request Logging to capture what your application is sending to DocuSign

Need help and guidance for accessing operationId in nodejs application

We are using nodejs as my backend application and react native in front end. And azure application insights for logging. In UI side, we are redirecting to Stripe checkout page(external page) for payment and then coming back to our application's confirmation page. Here we are loosing the flow on end-to-end transaction. My requirement is to link pre-stripe and post-stripe operation into one single flow. For this my approach of solving this problem is accessing OPERATIONID and pass it to stripe and receive it back from Stripe and use it in confirmation page so that we will one single flow. I Need help in guiding me to the right documentation/ solution proposals.
I read some articles(eg: How to get Application Insights operation id in javascript?) and figured out that operationId is a uniqueID which gets created out of my application and cant access it in the application. I tried to use below code and got response of that operationID as "ai.operation.id" but seems like this is not the right pattern(value) of operationId.
import { defaultClient } from 'applicationinsights';
const telemetryClient = defaultClient;
// tslint:disable-next-line:no-console
console.log(telemetryClient.context.keys[`operationId`]);
The main function of operationId is to help tracking distributed systems so you can correlate requests. So as given in this documentation in nodejs client, you should set the setDistributedTracingMode to appInsights.DistributedTracingModes.AI_AND_W3C as shown below.
const appInsights = require("applicationinsights");
appInsights
.setup("<your ikey>")
.setDistributedTracingMode(appInsights.DistributedTracingModes.AI_AND_W3C)
.start()
You should be able to get the operation id using the following code snippet.
const AppInsights = require("applicationinsights");
var context = AppInsights.getCorrelationContext();
var oid = context.operation.id;
If it does not solve your problem then, I would suggest you to set telemetry.context.operation.id to be a unique id by yourself and confirm if this is tracked by the Application Insights properly.
Also note that the latest version of the JavaScript SDK (SDK v2) for Application Insights have some changes as given in this document.
Moved context.operation to context.telemetryTrace. Some fields were also changed (operation.id --> telemetryTrace.traceID).
To keep the trace ID unique, where you previously used Util.newId(), now use Util.generateW3CId(). Both ultimately end up being the operation ID.
For more information read this log custom telemetry document.

Error handling in Azure function when used with SendGrid as output binding

I have a C# Azure function with output binding to SendGrid.
This Azure Function gets triggered when a message arrives in a ServiceBus topic. I operate on message and finally returns SendGridMessage. Hereon, SendGrid is responsible for sending out the actual email.
But in this whole scenario, Azure function does not get to know if the email is delivered or failed. Is there any way or hook available which can give me the aforementioned details ?
Any links, examples are appreciated.
Thanks
I don't think there is a way using the Sendgrid binding, as all the sending logic is abstracted away. If you need that, however, it's not much more complicated to instantiate your own Sendgrid client inside your Function:
using SendGrid;
using SendGrid.Helpers.Mail;
static SendGridClient _sendGridClient = new SendGridClient(ConfigurationManager.AppSettings["SendgridApiKey"]);
var msg = MailHelper.CreateSingleEmail(from, to, subject, plainTextContent, htmlContent);
var result = await _sendGridClient.SendEmailAsync(msg);
log.LogDebug($"SendGrid result={result.Body}");

Progressive Web Application receiving data to trigger notification

Hello i'm newbie and im hardly to understand this notification in service-worker, and because my knowledge isn't good yet then probably i will unable to explain my problem clearly.
so here's the code :
// triggered everytime, when a push notification is received.
self.addEventListener('push', function(event) {
console.info('Event: Push');
var title = 'New commit on Github Repo: RIL';
var body = {
'body': 'Click to see the latest commit',
'tag': 'pwa',
'icon': './images/48x48.png'
};
event.waitUntil(
self.registration.showNotification(title, body)
);
});
this is the code that trigger to POP the notification, what I do not understand is where the argument to accept/ receive the data ?
I've been searched a lot: https://auth0.com/blog/introduction-to-progressive-web-apps-push-notifications-part-3/ ,
https://developers.google.com/web/updates/2015/03/push-notifications-on-the-open-web
there's some new data JSON or from git-server or push api, but I still hardly to understand where's to accept the data.
sorry if you still do not understand what's my problem.
Here to make it simple what I want :
Let's say i make a button, and everytime i click the button it will value as 'True' and I want that 'True' value to pass into argument and trigger the push of notication in service-worker.
2nd questions: am I able to trigger notification with header or text in html ? since we can manipulate the text with DOM ?
am I able to trigger notification without GCM, or API cause I just want a simple notification in serivce-worker like above without passing much data.
If you give more advice or maybe notification without service-worker but real time , I am surely happy to read it but I hope Im able to understand.
There are basically two concepts involved that work well together but can be used independently. The first is the visible UI shown to a user that tells them information or prompts them for an action. The second is sending an event from a server to the browser without requiring the user to currently be active on the site. For full details I recommend reading Google's Web Push docs.
Before either of those scenarios you have to request permission from the user. Once permission is granted you can just create a notification. No server or service worker required.
If you want to send events from a server you will need a service worker and you will need to get a subscription for the user. Once you have a subscription you would send it to a server for when you want to send an event to that specific browser instance.
Once you receive a push event from a server you display the UI the same as in the first scenario except you have to do it from the service worker.

Resources