Je suis très nouveau pour Azure mécanismes et j'ai coincé sur ce problème.
J'ai l'azur de la fonction qui est censé être déclenchée par des événements publiés sur un événement hub. J'ai mis le sas de la chaîne de connexion obtenu dans le cas hub portail azure (avec les "gérer" grant option) et utilisé la même clé dans le EventHubTrigger annotation (C'est une Java 11 fonction)
Au début, j'ai eu une erreur indiquant que la fonction IP a été empêché de connexion, erreur de je me suis débarrassé en cochant la case "permettre à Microsoft de confiance de service" dans les paramètres réseau de l'événement hub.
Puis j'ai eu un 401 accès non autorisé.
Suppression de toutes les adresses ip des restrictions de l'événement hub (rendre public), il commence à écouter et traiter les événements poussé dans le cas hub.
Évidemment, je voudrais mettre ces restrictions en arrière, mais l'autoroute 401 exception ne s'arrêtent pas.
Ce qui me manque?
Modifier (Ajout de code de la fonction):
public class Function {
@FunctionName("feed-collector")
public void run(
@EventHubTrigger(name = "collect", consumerGroup = "$Default", connection = "AzureEventHubConnectionString", eventHubName = "feed-ordini", cardinality = Cardinality.MANY)
String message,
final ExecutionContext context
) {
context.getLogger().info(message);
}
}
AzureEventHubConnectionString est défini dans les paramètres de l'application et sa valeur est dans le format
Endpoint=sb://[hub-host].servicebus.windows.net/;SharedAccessKeyName=[SasPolicyName];SharedAccessKey=[primarykey]