Skip to main content

Getting Started

This covers the standalone deployment. To run inside an existing Laravel app, see Laravel Package.

Requirements

  • PHP 8.2+ with pdo, pdo_sqlite, and json extensions. SQLite is the default, zero-config storage engine; Postgres and MySQL are supported opt-in alternatives (pdo_pgsql/pdo_mysql) — see Database drivers.
  • No Composer packages are required at runtime, and the dashboard ships pre-built, so no Node/npm step either.

Get it

Clone the engine — the published cliqthemes/log-lens-core package — or unpack a tarball from its releases:

git clone https://github.com/cliqthemes/log-lens-core.git log-lens
cd log-lens

That repository is a read-only mirror of a private monorepo, where the same engine lives at packages/core/. Contributing explains the layout, the builds, and the test suites; bugs and requests go to issues.

Run

Serve the public/ directory:

php -S 127.0.0.1:8787 -t public

Open http://127.0.0.1:8787. On a local .test-style host (Laravel Herd or Valet, say), point that site's document root at public/ instead.

The first launch creates a default application backed by storage/log-analyzer.sqlite, along with logs/, processed/, and sources/ directories. Nothing needs migrating by hand.

Ingest your first logs

Two ways:

  1. Drop files into logs/ and click Process logs in the dashboard header (or POST /?api=import-incoming). Imported files are moved to processed/.

  2. CLI import (streams in place, does not move files):

    php bin/import.php --app=default /path/to/laravel.log

A first-level subdirectory under logs/ becomes a module - e.g. logs/billing/laravel.log is assigned to a Billing module. See Core Concepts.

Only ERROR and WARNING are ingested by default; change this under Settings to Ingestion or in config.

Next steps