I do not see all azure function invocations that uses this application insights

Sergio Villaescusa Moreno 0 Puntos de reputación
2026-06-03T09:04:24.51+00:00

I do not see all azure function invocations that uses this application insights

Funciones de Azure
Funciones de Azure

Servicio de Azure que proporciona una plataforma de proceso sin servidor controlada por eventos.


1 respuesta

Ordenar por: Lo más útil
  1. Rakesh Mishra 11,510 Puntos de reputación Personal externo de Microsoft Moderador
    2026-06-03T11:25:05.8333333+00:00

    Hola Sergio,

    Si notas que algunas de tus invocaciones de funciones de Azure faltan en Application Insightsn, especialmente durante periodos de mucho tráfico. La razón más común es el muestreo por telemetría.

    Por defecto, el anfitrión de Funciones permite el muestreo adaptativo para gestionar costes y reducir el volumen de datos. Cuando la tasa de ejecuciones entrantes supera un umbral específico (normalmente alrededor de 20 elementos por segundo), el anfitrión comienza a dejar caer aleatoriamente algunos datos de telemetría.

    Como se indica en la documentación oficial de monitorización de Application Insights:

    "Application Insights tiene una función de muestreo que puede protegerte de producir demasiados datos de telemetría en ejecuciones completadas en momentos de carga máxima. El muestreo está activado por defecto. Si parece que te faltan datos, puede que tengas que ajustar la configuración de muestreo para adaptarla a tu escenario particular de monitorización."

    Cómo resolver esto:

    Para asegurarte de ver cada invocación de función, puedes modificar tu host.json archivo para excluir explícitamente Request la telemetría de ser muestreada.

    Según la host.json referencia oficial de Azure Functions:

    "El muestreo de registros puede hacer que algunas ejecuciones no aparezcan en la hoja monitor de Application Insights. Para evitar muestreos de troncos, añade excludedTypes: "Request" valor samplingSettings ."

    Actualiza tu host.json para incluir la siguiente configuración:

    {
      "version": "2.0",
      "logging": {
        "applicationInsights": {
          "samplingSettings": {
            "isEnabled": true,
            "excludedTypes": "Request"
          }
        }
      }
    }
    

    (Nota: Si quieres dejar de perder absolutamente toda la telemetría—incluidos rastros y dependencias—puedes configurar "isEnabled": false, pero ten en cuenta que esto puede aumentar los costes de ingestión de Application Insight).

    Para confirmar que el muestreo es la causa:

    Puedes hacer una consulta rápida de Kusto en tu hoja de Registros de Insights de Aplicación ____ para ver si la telemetría se está perdiendo activamente. Si el RetainedPercentage es menor a 100, el muestreo está en acción:

    Fragmento de código

    union requests
    | where timestamp > ago(1d)
    | summarize RetainedPercentage = 100/avg(itemCount) by bin(timestamp, 1h), itemType
    

    Nota: Esta respuesta se genera con la ayuda de sistemas de IA.

    ¿Le resultó útil esta respuesta?

    0 comentarios No hay comentarios

Su respuesta

Las respuestas pueden ser marcadas como Respuestas aceptadas por el autor de la pregunta, lo que indica a los usuarios que la respuesta resolvió su problema.