• Analytics
    • Template

    Analytics

    This component was created and is maintained by an Istio partner. Please address support questions to the partner directly.

    The analytics template represents a single request reported to Apigee’s analytics processing system.Complete Apigee documentation on the concepts and usage of this adapter is also available on theApigee Adapter for Istio site.For more information and product support, please contact Apigee support.

    Example config:

    1. apiVersion: config.istio.io/v1alpha2
    2. kind: analytics
    3. metadata:
    4. name: apigee
    5. namespace: istio-system
    6. spec:
    7. api_key: request.api_key | request.headers["x-api-key"] | ""
    8. api_proxy: api.service | destination.service | ""
    9. response_status_code: response.code | 0
    10. client_ip: source.ip | ip("0.0.0.0")
    11. request_verb: request.method | ""
    12. request_uri: request.path | ""
    13. request_path: request.path | ""
    14. useragent: request.useragent | ""
    15. client_received_start_timestamp: request.time
    16. client_received_end_timestamp: request.time
    17. target_sent_start_timestamp: request.time
    18. target_sent_end_timestamp: request.time
    19. target_received_start_timestamp: response.time
    20. target_received_end_timestamp: response.time
    21. client_sent_start_timestamp: response.time
    22. client_sent_end_timestamp: response.time
    23. api_claims: # from jwt
    24. json_claims: request.auth.raw_claims | ""

    Template

    This Template provides Istio telemetry data to the Apigee Analytics engine.For additional information on this adapter or support please contact anchor-prega-support@google.com.

    FieldTypeDescription
    apiProxystringThe name of the proxy (usually the Istio API or service name).
    responseStatusCodeint64HTTP response code
    clientIpistio.policy.v1beta1.IPAddressClient IP address
    requestVerbstringHTTP request verb
    requestUristringHTTP request URI
    requestPathstringHTTP request path
    useragentstringHTTP user agent header
    clientReceivedStartTimestampistio.policy.v1beta1.TimeStampTimestamp of when the api_proxy started receiving the request.
    clientReceivedEndTimestampistio.policy.v1beta1.TimeStampTimestamp of when the api_proxy finished receiving the request.
    clientSentStartTimestampistio.policy.v1beta1.TimeStampTimestamp of when the api_proxy started sending the request to the target.
    clientSentEndTimestampistio.policy.v1beta1.TimeStampTimestamp of when the api_proxy finished sending the request to the target.
    targetSentStartTimestampistio.policy.v1beta1.TimeStampTimestamp of when the api_proxy started request to target.
    targetSentEndTimestampistio.policy.v1beta1.TimeStampTimestamp of when the api_proxy finished sending request to target.
    targetReceivedStartTimestampistio.policy.v1beta1.TimeStampTimestamp of when the api_proxy started receiving response from target.
    targetReceivedEndTimestampistio.policy.v1beta1.TimeStampTimestamp of when the api_proxy finished receiving response from target.
    apiClaimsmap<string, string>The JWT claims that were used for authenticating the request (if any)Use subkey “json_claims” for passing all claims in as a single JSON field.
    apiKeystringThe API KEY that was used for authenticating the request (if any)