phpops/security-logs

PHP client for Log Server API - send security logs from any application

Maintainers

Package info

github.com/Swe-HimelRana/security-logs

pkg:composer/phpops/security-logs

Statistics

Installs: 53

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 0

1.0.0 2026-03-13 06:20 UTC

This package is auto-updated.

Last update: 2026-04-13 06:25:52 UTC


README

PHP client for sending logs to the Log Server API.

Installation

composer require phpops/security-logs

Or add to your composer.json:

{
    "require": {
        "phpops/security-logs": "^1.0"
    }
}

For local development (from parent directory):

{
    "repositories": [
        {
            "type": "path",
            "url": "../LogsServer/client"
        }
    ],
    "require": {
        "phpops/security-logs": "@dev"
    }
}

Usage

Basic

<?php

require 'vendor/autoload.php';

use LogServer\Client\LogClient;

$client = new LogClient(
    'https://your-log-server.com',  // Base URL
    'your-secret-api-key'           // API key
);

$response = $client->log([
    'event' => 'user_login',
    'user_id' => 123,
    'ip' => $_SERVER['REMOTE_ADDR'],
]);

if (LogClient::isSuccess($response)) {
    echo "Log sent: " . ($response['status'] ?? 'saved');
} else {
    echo "Error: " . ($response['error'] ?? 'Unknown');
}

From environment variables

// Set LOG_SERVER_URL and LOG_SERVER_API_KEY in .env or environment
putenv('LOG_SERVER_URL=https://logs.example.com');
putenv('LOG_SERVER_API_KEY=your-secret-key');

$client = LogClient::fromEnv();
$client->log(['message' => 'Application started']);

With timeout

$client = new LogClient('https://logs.example.com', 'your-key', timeout: 5);
$client->log(['event' => 'quick_log']);

Response format

Key Description
success true if request was accepted
status saved or ignored (duplicate)
message Human-readable message
error Error message when success is false

Requirements

  • PHP 7.4+
  • ext-json
  • Log Server with matching API key and User-Agent