groups:
  - id: registry.aspnetcore
    type: attribute_group
    display_name: ASP.NET Core Attributes
    brief: ASP.NET Core attributes
    attributes:
      - id: aspnetcore.rate_limiting.policy
        type: string
        brief: Rate limiting policy name.
        stability: stable
        examples: ["fixed", "sliding", "token"]
      - id: aspnetcore.rate_limiting.result
        type:
          members:
            - id: acquired
              value: 'acquired'
              brief: "Lease was acquired"
              stability: stable
            - id: endpoint_limiter
              value: 'endpoint_limiter'
              brief: "Lease request was rejected by the endpoint limiter"
              stability: stable
            - id: global_limiter
              value: 'global_limiter'
              brief: "Lease request was rejected by the global limiter"
              stability: stable
            - id: request_canceled
              value: 'request_canceled'
              brief: "Lease request was canceled"
              stability: stable
        stability: stable
        brief: Rate-limiting result, shows whether the lease was acquired or contains a rejection reason
        examples: ["acquired", "request_canceled"]
      - id: aspnetcore.routing.is_fallback
        type: boolean
        stability: stable
        brief: A value that indicates whether the matched route is a fallback route.
        examples: [true]
      - id: aspnetcore.diagnostics.handler.type
        type: string
        stability: stable
        brief: Full type name of the [`IExceptionHandler`](https://learn.microsoft.com/dotnet/api/microsoft.aspnetcore.diagnostics.iexceptionhandler)
          implementation that handled the exception.
        examples: ["Contoso.MyHandler"]
      - id: aspnetcore.request.is_unhandled
        type: boolean
        stability: stable
        brief: Flag indicating if request was handled by the application pipeline.
        examples: [true]
      - id: aspnetcore.routing.match_status
        type:
          members:
            - id: success
              value: 'success'
              brief: 'Match succeeded'
              stability: stable
            - id: failure
              value: 'failure'
              brief: 'Match failed'
              stability: stable
        stability: stable
        brief: Match result - success or failure
        examples: ["success", "failure"]
      - id: aspnetcore.diagnostics.exception.result
        type:
          members:
            - id: handled
              value: 'handled'
              brief: "Exception was handled by the exception handling middleware."
              stability: stable
            - id: unhandled
              value: 'unhandled'
              brief: "Exception was not handled by the exception handling middleware."
              stability: stable
            - id: skipped
              value: 'skipped'
              brief: "Exception handling was skipped because the response had started."
              stability: stable
            - id: aborted
              value: 'aborted'
              brief: "Exception handling didn't run because the request was aborted."
              stability: stable
        stability: stable
        brief: ASP.NET Core exception middleware handling result
        examples: ["handled", "unhandled"]
