- Does horizonhub/agent work without Laravel Horizon installed?
- No, this package requires Laravel Horizon to be installed and configured in your application. It listens to Horizon’s job events to collect telemetry, so it’s only relevant if you’re already using Horizon for queue processing.
- How do I configure the agent to send data to HorizonHub?
- Configuration is handled via Laravel’s `.env` file and published config files. Set `HORIZONHUB_ENDPOINT`, `HORIZONHUB_API_KEY`, and toggle `HORIZONHUB_ENABLED` to true. The package provides sensible defaults for production environments.
- What Laravel and PHP versions does horizonhub/agent support?
- The package is optimized for Laravel 8+ and requires PHP 8.0+. It leverages modern Laravel features like service providers and config publishing, so older versions may need adjustments or won’t work at all.
- Can I customize which job events are sent to HorizonHub?
- Yes, the agent allows filtering and transformation of events via configuration. You can ignore specific job types or modify payloads before they’re sent to HorizonHub, making it flexible for different monitoring needs.
- What happens if HorizonHub’s API is down or rate-limited?
- The package includes basic error handling, but there’s no built-in retry mechanism or dead-letter queue. Failed API calls may be logged, but you’ll need to implement custom logic (e.g., exponential backoff or local caching) for resilience in production.
- Is there a performance impact from sending job events to HorizonHub?
- The agent is designed for minimal overhead, but network calls to HorizonHub for every job event could introduce latency in high-throughput queues. If performance is critical, consider batching events or using async processing.
- How do I test the agent in a staging environment before deploying to production?
- Start by installing the package with `composer require horizonhub/agent`, then publish the config and set `HORIZONHUB_ENABLED=false` for testing. Use HorizonHub’s sandbox or mock API endpoints to verify payloads without real network calls.
- Can I use this agent with other monitoring tools like Datadog or Sentry?
- The package is tightly coupled to HorizonHub’s API, so direct integration with other tools isn’t supported out of the box. However, you could extend the agent’s event hooks to forward data to multiple platforms if needed.
- What’s the difference between this agent and just using HorizonHub’s direct API?
- This package provides Laravel-specific integrations like config-driven setup, event filtering, and built-in error handling. It abstracts away the complexity of manually sending events to HorizonHub, making it easier to maintain and extend.
- Are there any compliance or privacy concerns with sending job metrics to HorizonHub?
- Since the agent sends raw job events and environment metadata, ensure your organization’s compliance policies allow external telemetry collection. HorizonHub’s API should align with your data retention and security requirements, but audit their terms before use.