Open
Description
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:
beats/x-pack/filebeat/input/cel/input.go
Line 111 in 6409d00