- How do I install and configure naoray/laravel-github-monolog in Laravel?
- Install it with Composer, publish the package config, and create a GitHub token that can write issues. Configure the repository, labels, and log level, then add the channel to config/logging.php and include it in your log stack. A staging smoke test with a synthetic exception is recommended before production.
- Which Laravel and PHP versions does naoray/laravel-github-monolog support?
- The package targets Laravel logging via Monolog, but the exact PHP, Laravel, and Monolog version constraints should be checked in the repository's composer.json and release notes. Verify those constraints against your application matrix before committing. The technical evaluation explicitly recommends confirming PHP/Laravel support and the Monolog major version.
- Does this package automatically create GitHub issues from Laravel exceptions?
- Yes. naoray/laravel-github-monolog is a Monolog handler exposed as a Laravel log channel, so errors and exceptions sent to that channel can become GitHub issues. It is intended as a notification and triage layer, not a replacement for local logs.
- Will queued job exceptions create duplicate GitHub issues?
- There was a behavioral regression in v3.11.0: queued-job errors were grouped by job class and queue instead of the dispatching route, which caused duplicate issues on first occurrence. v3.11.1 mitigates this with a temporary legacy-signature lookup and by adding the signature to comments. The legacy lookup is expected to be removed in the next major, so plan for that change.
- Is GitHub issue creation synchronous inside the logging path?
- The provided evaluation does not confirm whether issue creation runs synchronously inside the logging path or is queue-backed. Treat this as an unverified operational risk and test latency and failure behavior in staging. For low-to-moderate error volume it may be acceptable, but production use needs explicit failure isolation.
- What happens if GitHub returns 401, 403, 429, or 5xx errors?
- The evaluation flags GitHub API failure behavior as a key question: you must verify whether the handler fails open or adds latency when GitHub returns 401, 403, 429, or 5xx. Monitor API rate limits during the first production week and avoid enabling it at a noisy log level. Token scope and rotation should also be part of the operational plan.
- Does naoray/laravel-github-monolog support fine-grained GitHub tokens or GitHub Enterprise?
- Fine-grained GitHub token support and GitHub Enterprise base URL support are not confirmed by the provided evaluation. Check the package documentation and configuration options before relying on them. If Enterprise or fine-grained tokens are required, validate them in staging first.
- How should I upgrade from v3.10 or v3.11.0?
- From v3.10, upgrade directly to v3.11.1 rather than v3.11.0. Expect a one-time reconciliation of route-based duplicate issues, and keep any published comment stub's signature marker so dedupe/comment matching keeps working. From v3.11.0, upgrading to v3.11.1 stops new duplicate issue creation.
- Should I replace my file or Sentry logging channel with GitHub Issues?
- No. Add it as a dedicated channel in a stack alongside file, Sentry, or other handlers. GitHub Issues should be a notification and triage layer, not the system of record for application logs.
- How can I test the channel safely before production?
- Use a staging environment and a dedicated GitHub repository or labels, then trigger a synthetic HTTP exception and a queued-job exception. Confirm issue creation, comment dedupe, template signature behavior, and that issue bodies do not leak secrets or PII. Re-cache config after publishing, and verify behavior under Octane or long-running workers.