beats icon indicating copy to clipboard operation
beats copied to clipboard

[Filebeat] Add health status reporting to azure blob storage input

Open andrewkroh opened this issue 6 months ago • 1 comments

Update the Azure Blob Storage input to report its health status, providing better visibility into the operational state for users.

The Azure Blob Storage input should report its health status using the context.UpdateStatus() method. Status changes should only be reported when the status actually changes (don't repeatedly send HEALTHY if the status is already HEALTHY).

Status Reporting

The input should report the following states:

  • STARTING: When the input is initializing before attempting to connect to Azure.
  • CONFIGURING: When setting up Azure Blob Storage client and validating configuration.
  • HEALTHY: When successfully connected to Azure Blob Storage and monitoring blobs.
  • DEGRADED: When encountering non-fatal errors but can still operate. Examples:
    • Temporary network issues
    • Temporary permission issues that might resolve
  • FAILED: When encountering fatal errors preventing operation. Examples:
    • Authentication failures (invalid credentials)
    • Container not found
    • Insufficient permissions to access blobs
    • Persistent network connectivity issues

Include relevant context information with non-HEALTHY states:

  • For authentication issues: Include error message and status code (e.g., 401, 403)
  • For container not found: Include container name and error message
  • For connectivity issues: Include error message and endpoint being accessed

References

See the CEL input implementation for reference: https://github.com/elastic/beats/blob/6409d005a31e0147a40f0872794880b3df15a69c/x-pack/filebeat/input/cel/input.go#L111

andrewkroh avatar May 08 '25 12:05 andrewkroh

Pinging @elastic/security-service-integrations (Team:Security-Service Integrations)

elasticmachine avatar Jun 20 '25 11:06 elasticmachine