Download the PHP package uptimex/laravel-client without Composer

On this page you can find all versions of the php package uptimex/laravel-client. It is possible to download/install these versions without Composer. Possible dependencies are resolved automatically.

FAQ

After the download, you have to make one include require_once('vendor/autoload.php');. After that you have to import the classes with use statements.

Example:
If you use only one package a project is not needed. But if you use more then one package, without a project it is not possible to import the classes with use statements.

In general, it is recommended to use always a project to download your libraries. In an application normally there is more than one library needed.
Some PHP packages are not free to download and because of that hosted in private repositories. In this case some credentials are needed to access such packages. Please use the auth.json textarea to insert credentials, if a package is coming from a private repository. You can look here for more information.

  • Some hosting areas are not accessible by a terminal or SSH. Then it is not possible to use Composer.
  • To use Composer is sometimes complicated. Especially for beginners.
  • Composer needs much resources. Sometimes they are not available on a simple webspace.
  • If you are using private repositories you don't need to share your credentials. You can set up everything on our site and then you provide a simple download link to your team member.
  • Simplify your Composer build process. Use our own command line tool to download the vendor folder as binary. This makes your build process faster and you don't need to expose your credentials for private repositories.
Please rate this library. Is it a good library?

Informations about the package laravel-client

# UptimeX Laravel Client **The official Laravel SDK for [UptimeX](https://uptimex.tech) — full-stack application performance monitoring.** [![Tests](https://img.shields.io/github/actions/workflow/status/Purposeeco/uptimex-laravel-client-compser/tests.yml?branch=main&label=tests&style=flat-square)](https://github.com/Purposeeco/uptimex-laravel-client-compser/actions) [![Latest Version](https://img.shields.io/packagist/v/uptimex/laravel-client.svg?style=flat-square)](https://packagist.org/packages/uptimex/laravel-client) [![PHP Version](https://img.shields.io/packagist/php-v/uptimex/laravel-client.svg?style=flat-square)](https://packagist.org/packages/uptimex/laravel-client) [![License: MIT](https://img.shields.io/badge/License-MIT-blue.svg?style=flat-square)](LICENSE)

What it does

Add the package to a Laravel app, set one token, and UptimeX captures eleven kinds of telemetry automatically — with no instrumentation calls scattered through your code. The SDK hooks into Laravel's framework events, buffers what it captures in memory, and hands it to the local uptimex:agent daemon once the response has reached the user — so monitoring never slows a request.

Captured What lands in UptimeX
HTTP requests route, method, status, response time, headers, payload (redacted)
Database queries normalized SQL, connection, duration, slow-query detection
Exceptions class, message, file, line, stack trace, fingerprint, occurrence groups
Background jobs class, queue, attempts, status (queued → processing → processed / released / failed), duration
Cache events hit / miss / write / delete / fail by key + store, hit-rate analytics
Log lines full PSR-3 (debug → emergency), channel, message, context (redacted)
Outgoing mail mailer, recipients, subject
Notifications class, channel, notifiable
Artisan commands name, arguments, exit code, duration
Scheduled tasks expression, description, run duration, success / failure
Outgoing HTTP URL, method, status and duration of every request your app makes

Every event carries a trace id (UUIDv7), so a single request in the dashboard shows its queries, jobs, log lines, and outgoing calls on one timeline.

Why use it

Requirements

Installation

Set your environment's ingest token in .env:

Verify the connection:

Then run the agent — the daemon that delivers your telemetry — and leave it running:

That is the whole setup. With the agent running, telemetry flows automatically as your app serves requests, runs jobs, and executes scheduled tasks — visible in the UptimeX dashboard within seconds. In production the agent runs as a supervised daemon; see Deploying to production.

Configuration

The defaults work out of the box. To change anything, publish the config file:

Env var Default Purpose
UPTIMEX_ENABLED true Master switch — false makes the SDK a complete no-op
UPTIMEX_TOKEN Environment-scoped ingest token from the UptimeX dashboard
UPTIMEX_DEPLOY Release identifier, usually set by uptimex:deploy
UPTIMEX_SERVER hostname Server label shown in the dashboard
UPTIMEX_AGENT_ADDRESS 127.0.0.1:9237 Address the uptimex:agent daemon listens on (host:port or unix:///path.sock)
UPTIMEX_LOG_LEVEL debug Minimum PSR-3 level the uptimex log channel captures

Privacy, sampling, and filtering have their own env vars — see Sampling, filtering & redaction.

Performance internals — network timeouts, buffer sizes, the agent's in-memory queue — are deliberately not environment variables. UptimeX manages those values so a stray setting can never degrade your app.

The ingest URL is likewise not an env var — it ships hardcoded in the package (https://ingest.uptimex.tech). The host is the same for every workspace; your token, not the URL, routes data to yours. Hardcoding it also means a stray http:// can never leak telemetry in plaintext.

Delivery — the agent

Telemetry is delivered by one channel: the uptimex:agent daemon. During a request the SDK records events into an in-memory buffer; when the request ends it writes the finished batch to the agent over a local loopback socket — a microsecond-scale write, no network on the request path. The daemon ships batches to UptimeX out of band, buffering in memory and retrying through outages, and drains gracefully on SIGTERM so a deploy restart loses nothing.

Run the agent locally while you develop:

In production it runs as a supervised daemon — see Deploying to production.

With no agent running, the SDK is inert. It detects the absence — a cached health check, re-probed every ~30 s — starts no trace, buffers nothing, and writes no log line: it behaves exactly as if UPTIMEX_ENABLED=false. The moment the agent is back, capture resumes on its own. So a forgotten or crashed agent costs a gap in telemetry, never an error or a slowdown.

Check the agent's reachability any time with php artisan uptimex:status.

Deploying to production

The uptimex:agent daemon must run as a supervised, long-lived process — exactly as you would run Horizon or a queue worker. Keep php artisan uptimex:agent alive; running the command by hand is not enough, it must survive reboots and crashes.

php artisan uptimex:install generates the supervision config for you:

Serverless runtimes (Vapor / Lambda) cannot host a persistent daemon, so the SDK is inert there — no errors, just no telemetry.

Capturing logs

The SDK registers a uptimex log channel automatically — no config/logging.php edit needed. To capture your application's logs as telemetry, add uptimex to your log stack in .env:

Every Log::info(), Log::error(), etc. written during a traced request, command, or job now ships to UptimeX as a log event on that trace — channel, level, message, and context included (with PII redaction). Logs fired outside a trace are skipped by design.

Tune the minimum level captured with UPTIMEX_LOG_LEVEL (default debug):

Already have a uptimex channel defined in config/logging.php? The SDK detects it and leaves yours untouched.

Sampling, filtering & redaction

Sampling

Control telemetry volume per event-root type. The decision is made once at trace start, and child events inherit it:

Env var Default
UPTIMEX_REQUEST_SAMPLE_RATE 1.0
UPTIMEX_COMMAND_SAMPLE_RATE 1.0
UPTIMEX_SCHEDULED_TASK_SAMPLE_RATE 1.0
UPTIMEX_EXCEPTION_SAMPLE_RATE 1.0

High-traffic apps usually lower UPTIMEX_REQUEST_SAMPLE_RATE (e.g. 0.1); keep exception sampling at 1.0 unless you are sure. Server-side aggregations multiply by 1/rate, so dashboard counts stay true to real volume. To force-capture a specific request at runtime:

Ignoring whole categories

Set any of these to true to drop an event type entirely — no buffer entry, no network call:

UPTIMEX_IGNORE_QUERIES · UPTIMEX_IGNORE_CACHE_EVENTS · UPTIMEX_IGNORE_MAIL · UPTIMEX_IGNORE_NOTIFICATIONS · UPTIMEX_IGNORE_OUTGOING_REQUESTS

Filtering individual events

Register predicates in a service provider's boot() — return true to drop the event:

Also available: rejectQueuedJobs, rejectMail, rejectNotifications, rejectOutgoingRequests, and the generic reject(string $type, Closure).

Redaction

Header names, request-payload fields, and log-context keys are redacted against built-in defaults. Override them with comma-separated env vars:

Env var Redacts
UPTIMEX_REDACT_HEADERS request / response header names
UPTIMEX_REDACT_PAYLOAD_FIELDS top-level request-payload keys
UPTIMEX_REDACT_LOG_KEYS keys inside captured log context

Two capture toggles govern potentially-sensitive data:

Env var Default Notes
UPTIMEX_CAPTURE_REQUEST_PAYLOAD false opt-in — request bodies can hold PII
UPTIMEX_CAPTURE_EXCEPTION_SOURCE_CODE true ±5 source lines around the throw site

For anything the defaults don't cover, register a transformer in boot():

Also available: redactHeaders, redactPayload, redactQueries, redactMail, redactCacheKeys, redactOutgoingRequests, and the generic redact(string $type, Closure).

Deployment markers

Add one command to the end of your CI deploy step:

UptimeX then:

Artisan commands

Command What it does
php artisan uptimex:test Send a synthetic batch and print the result — a real round-trip that verifies token and connectivity.
php artisan uptimex:status Print the resolved SDK config and report whether the agent is reachable.
php artisan uptimex:deploy <ref> Post a deployment marker — see Deployment markers.
php artisan uptimex:agent Run the telemetry agent daemon — the SDK's delivery process; run it locally and as a supervised daemon in production.
php artisan uptimex:install Generate Supervisor / systemd config to run uptimex:agent as a supervised daemon in production.

The Uptimex facade

Most apps never call the SDK directly — the lifecycle hooks handle HTTP requests, Artisan commands, and scheduled tasks automatically. For custom workers or CLI scripts, the facade exposes the full surface:

Performance

The SDK is built to add negligible overhead to a request:

Testing

The package ships three test suites:

Suite Covers External deps
Unit + Feature SDK internals against a Testbench-faked Laravel; no sockets none
Integration Real HTTP calls to a live UptimeX ingest endpoint a reachable UptimeX server + a valid token

Integration tests skip automatically unless both env vars are set:

License

MIT © Purpose Company


### Built by [Purpose Company](https://github.com/Purposeeco) A Palestinian software development company based in the West Bank.
We build observability and developer tools used by teams across the region and beyond. [**UptimeX**](https://uptimex.tech) · [**GitHub**](https://github.com/Purposeeco) · [**Issues**](https://github.com/Purposeeco/uptimex-laravel-client-compser/issues)

All versions of laravel-client with dependencies

PHP Build Version
Package Version
Requires php Version ^8.2
ext-json Version *
ext-zlib Version *
guzzlehttp/guzzle Version ^7.5
illuminate/console Version ^10.0|^11.0|^12.0|^13.0
illuminate/contracts Version ^10.0|^11.0|^12.0|^13.0
illuminate/http Version ^10.0|^11.0|^12.0|^13.0
illuminate/support Version ^10.0|^11.0|^12.0|^13.0
Composer command for our command line client (download client) This client runs in each environment. You don't need a specific PHP version etc. The first 20 API calls are free. Standard composer command

The package uptimex/laravel-client contains the following files

Loading the files please wait ...