Azure/azure-functions-signalrservice-extension

support diagnostic client

Opened this issue · 4 comments

be nice if there was a way to mark my client as diagnostic, maybe just a host.json setting or possibly in the attr itself

If you are using C#, you could try the ServerlessHub.NegotiateAsync method and set the NegotiationOptions.IsDiagnosticClient to true. If you are using other languages, currently there is no way to do this. Will put this feature request into our backlog.

@Y-Sindo i am c#, but not following recommendation. All i'm getting injected is an IAsyncCollector

Whether a client is diagnostic is decided when the client negotiates (get the client url and access token), which is irrelevant to how you send your messages, IAsyncCollector, etc. You are possible to use SignalRConnectionInfo input binding to negotiate your client and SignalRConnectionInfo has no ability to mark a client as diagnostic. But you can use another model : ServerlessHub to do the negotiation, see here for a sample. Don't forget to set the NegotiationOptions.IsDiagnosticClient to true.

Read more about negotiation: https://docs.microsoft.com/en-us/azure/azure-signalr/signalr-concept-serverless-development-config#negotiate-function

@Y-Sindo thx I understand now