fkeloks/ibexa-logs-ui
Ibexa Logs UI adds a lightweight back-office dashboard for browsing and inspecting application log files. View available logs, filter entries, and review details directly in Ibexa, helping administrators locate errors and troubleshoot issues faster without SSH or direct server access.
Architecture fit. fkeloks/ibexa-logs-ui is a Symfony bundle for the Ibexa DXP back office that surfaces Monolog output (var/log/*.log) as a browsable admin screen — a thin controller + Twig layer over the filesystem, registered like any Ibexa bundle. Architecturally it is a developer/ops convenience, not a business capability. It occupies no domain layer, persists nothing, and touches no content model. That makes it a clean fit mechanically but a weak fit strategically: on any project with centralized logging (ELK/Loki, Sentry, Datadog, cloud log drains), it duplicates capability with worse ergonomics. The only defensible use case is a single-node, on-prem Ibexa install where operators lack shell/filesystem access and no log pipeline exists.
Integration feasibility. Low effort, low blast radius. Installation is composer require, bundle registration in config/bundles.php, cache clear — no migrations, no schema, no new services to operate. The realistic effort is not installation but verification: confirming route registration, template compatibility with your Admin UI build, and that the bundle's Monolog assumptions match your handler configuration (line formatter vs. JSON vs. custom processors).
Technical risk. High for a package this small, and almost entirely supply-chain and lifecycle risk rather than runtime risk. Zero stars, zero dependents, last release 2022-09-05, and a composite score of 0.23 means effectively no community validation: nobody has hit the edge cases before you, and there is no one to file them with. Concretely:
composer why-not) or resolve into an untested combination.Key questions to close before a decision.
Stack fit. Requires an existing Symfony/Ibexa application with ibexa/admin-ui and standard Monolog file handlers writing to var/log. No external services, no storage, no queue. If your logs go to stderr/stdout (containerized), the package has nothing to render and is a non-starter.
Migration path. The realistic origin is ezsystems/ezplatform-logs-ui on legacy eZ Platform 2.x/3.x — this fork appears to be the Ibexa 4 successor for teams carrying that habit forward. If you are not coming from that bundle, treat this as greenfield and ask hard whether a log viewer belongs in the CMS at all versus in the observability stack you already pay for.
Compatibility. Validate on a branch, not in the release train: composer why-not against the lock file, bin/console debug:router | grep -i log, bin/console debug:container for any Monolog overrides, and a template smoke test in the back office. Confirm the bundle does not replace or reorder your Monolog handlers — a handler override here would be the one change with genuine production consequence.
Sequencing.
bundles.php, clear cache).Maintenance. You are the maintainer. Budget a light recurring cost — roughly a day per platform upgrade cycle to re-verify templates and PHP compatibility — and treat any Admin UI breakage as your ticket to close, not upstream's. The mitigation that keeps this cheap is keeping the bundle's footprint small and avoiding any temptation to extend it (adding filters, export, retention controls) without first deciding you own a product.
Support. No vendor, no active maintainer, no user community to escalate to. The compensating factor is that the codebase is small enough for a senior PHP developer to read end-to-end in an afternoon, so support is bounded. Document the fork owner and the upgrade procedure; without that, this becomes tribal knowledge and then an outage.
Scaling. Two distinct concerns. Log size: a naive full-file read will hit memory limits or request timeouts on mature installations — verify pagination/tail behavior and cap it, or point the UI at rotated segments only. Topology: on any multi-node deployment (Ibexa Cloud, Kubernetes, load-balanced app servers), the UI shows only the local node's log file. In a cluster this is actively misleading during incident response — an operator may conclude a request succeeded cleanly because the load balancer sent it to a node they weren't reading. This is the strongest argument against adoption outside single-node installs.
Failure modes to plan for. Timeout or memory exhaustion on large files; permission-denied on var/log after a deploy with changed ownership; silent rendering breakage after a Monolog formatter change; template breakage after an Admin UI minor upgrade; secret/PII exposure to any back-office user who can reach the route; and incident-response confusion in clustered topologies. Each is cheap to detect with a synthetic smoke test and expensive to discover during an outage.
Ramp-up. Developer ramp-up is under an hour — install, register, clear cache. Operator ramp-up is a short written runbook covering where the route lives, what it does and does not show (single node only), and the role required. No training program, no data migration, no new infrastructure.
Recommendation. Do not adopt as a dependency on the strength of the package itself — the adoption signals are absent and the 2022 release is a lifecycle liability. Adopt only if a concrete, documented gap exists (single-node deployment, no shell access for operators, no log pipeline on the roadmap), and then only as a pinned internal fork with environment-gated registration and a named owner. If the underlying driver is "operators need log visibility," a lightweight log-shipping solution costs marginally more and solves the clustered case, the retention case, and the PII-scoping case simultaneously.
How can I help you explore Laravel packages today?