iq2i/vigie-bundle
A Symfony bundle from iq2i that integrates Vigie into your app, providing configuration and service wiring to add Vigie-powered monitoring and alerting with minimal setup. It streamlines installation so teams can connect existing Symfony projects to Vigie quickly.
composer require iq2i/vigie-bundle. This is a Symfony bundle, not a Laravel package — it registers through config/bundles.php (or Symfony Flex auto-discovery). On Laravel you'll be wiring the services manually through a small service provider; budget for that instead of assuming php artisan vendor:publish will do anything.record.ip_address and output.*.record.ip_address: true on the emitting kernel (explicitly called out in the v0.3.0 docs). Without it, emitted decisions carry no source IP and CrowdSec has nothing to correlate against — this is the single most common "it runs but nothing happens" cause.cscli decisions list in a few minutes.cscli decisions list and cscli metrics before writing any custom code.output.syslog when you're already shipping logs through rsyslog/syslog-ng or a collector. You must install the CrowdSec parser shipped with the bundle (added in this release) — the parser is what teaches CrowdSec to understand the syslog-encapsulated lines. File output and syslog can coexist, so you can migrate incrementally by running both and diffing cscli decisions list.host.hostname defaults to the container ID. If you group decisions by host anywhere (dashboards, alert routing), override it explicitly — either through config or by passing a stable name from your orchestrator.record.ip_address must be true on the kernel that emits the record. Setting it on a different service in a multi-kernel app looks correct in config and does nothing.cscli parsers list.max_length warning is the only signal you get for truncation. RFC 5424 datagrams have a practical ceiling, and enrichment makes payloads larger — if you turned on removed-decision enrichment and started seeing these warnings, the two are related. Either raise max_length or shorten the enriched fields.host.hostname being the container ID means hostnames change on every redeploy. Anything keyed on hostname will fragment; pin it.tail -f the emitted file (or check journalctl for syslog) → confirm line shape matches the bundled parser → cscli metrics for parse/acquisition counters → cscli decisions list. That sequence isolates emission vs. parsing vs. decision-engine problems quickly.How can I help you explore Laravel packages today?