PHPackages                             consigliere/signal - PHPackages - PHPackages  [Skip to content](#main-content)[PHPackages](/)[Directory](/)[Categories](/categories)[Trending](/trending)[Leaderboard](/leaderboard)[Changelog](/changelog)[Analyze](/analyze)[Collections](/collections)[Log in](/login)[Sign up](/register)

1. [Directory](/)
2. /
3. [Utility &amp; Helpers](/categories/utility)
4. /
5. consigliere/signal

ActiveLibrary[Utility &amp; Helpers](/categories/utility)

consigliere/signal
==================

v1.1.0(6y ago)03713PHP

Since Jun 5Pushed 6y ago1 watchersCompare

[ Source](https://github.com/consigliere/Signal)[ Packagist](https://packagist.org/packages/consigliere/signal)[ RSS](/packages/consigliere-signal/feed)WikiDiscussions master Synced 2w ago

READMEChangelog (10)Dependencies (4)Versions (24)Used By (3)

signal
======

[](#signal)

Laravelsignalv5.4~0.2v5.5~0.3v5.7~0.8v5.8~1.0The logger provides the eight logging levels defined in RFC 5424: *emergency*, *alert*, *critical*, *error*, *warning*, *notice*, *info* and *debug*. Passing message into event and It will automatically detect request url, request method, client ip, browser, brower version, user OS etc and save it into database. The log data can be sent to user email by changing the configuration setting in config file.

Install
-------

[](#install)

```
composer require consigliere/signal
```

### Migration

[](#migration)

```
php artisan vendor:publish --tag=migrations-signal
php artisan migrate
```

### Publish config

[](#publish-config)

```
php artisan vendor:publish --tag=config-signal
```

Basic
-----

[](#basic)

### Signal - using `event` helper

[](#signal---using-event-helper)

```
event('signal.emergency', [$message]);
event('signal.alert', [$message,]);
event('signal.critical', [$message]);
event('signal.error', [$message]);
event('signal.warning', [$message]);
event('signal.notice', [$message]);
event('signal.info', [$message]);
event('signal.debug', [$message]);
```

### Signal - Using `Event` Facade

[](#signal---using-event-facade)

```
use Illuminate\Support\Facades\Event;

Event::dispatch('signal.emergency', [$message]);
Event::dispatch('signal.alert', [$message]);
Event::dispatch('signal.critical', [$message]);
Event::dispatch('signal.error', [$message]);
Event::dispatch('signal.warning', [$message]);
Event::dispatch('signal.notice', [$message]);
Event::dispatch('signal.info', [$message]);
Event::dispatch('signal.debug', [$message]);
```

Events Wrapper
--------------

[](#events-wrapper)

In the config, `log.activity` and specific logging control needs to be set as true.

### Wrapper

[](#wrapper)

```
$this->fireLog('emergency', $message);
$this->fireLog('alert', $message);
$this->fireLog('critical', $message);
$this->fireLog('error', $message);
$this->fireLog('warning', $message);
$this->fireLog('notice', $message);
$this->fireLog('info', $message);
$this->fireLog('debug', $message);
```

### Code Example

[](#code-example)

```
use App\Components\Signal\Traits\Signal;

class UserController extends Controller
{
    use Signal;

    public function browse(Request $request): \Illuminate\Http\JsonResponse
    {
        $data   = [];
        $option = $this->getOption();
        $param  = $this->getParam($this->type);

        try {
            $user = $this->userService->profile($data, $option, $param);
        } catch (\Exception $error) {
            # Provide $error instance of \Exception
            # Provide the uuid, upon empty, error uuid will be assigned automatically
            $this->fireLog('error', $error->getMessage(), ['error' => $error, 'uuid' => $this->euuid]);

            return $this->response($this->getErrorResponse($this->euuid, $error), 500);
        }

        return $this->response($user, 200);
    }
}
```

### Signal Api Response error reporting example

[](#signal-api-response-error-reporting-example)

- [Example error response in production environment](https://github.com/consigliere/Scaffold#example-error-response-in-production-environment)
- [Example error response in not production environment](https://github.com/consigliere/Scaffold#example-error-response-in-not-production-environment)

### Sent log data into multiple email recipient

[](#sent-log-data-into-multiple-email-recipient)

Make sure the application can send an email by providing the correct data in `.env`.

```
MAIL_DRIVER=
MAIL_HOST=
MAIL_PORT=
MAIL_USERNAME=
MAIL_PASSWORD=
MAIL_ENCRYPTION=
```

Set the `LOG_ACTIVITY` and `SIGNAL_EMAIL_SENT` value to `true` in `.env`. Provide user email data where it will be sent separated by a comma.

```
LOG_ACTIVITY=true
SIGNAL_EMAIL_SENT=true
SIGNAL_EMAIL_SENT_TO=email1@example.com,email2@example.com,etc@example.com
SIGNAL_USE_TABLE=signal_log

MAIL_FROM_ADDRESS=
MAIL_FROM_NAME=
```

###  Health Score

32

—

LowBetter than 69% of packages

Maintenance20

Infrequent updates — may be unmaintained

Popularity12

Limited adoption so far

Community12

Small or concentrated contributor base

Maturity73

Established project with proven stability

 Bus Factor1

Top contributor holds 100% of commits — single point of failure

How is this calculated?**Maintenance (25%)** — Last commit recency, latest release date, and issue-to-star ratio. Uses a 2-year decay window.

**Popularity (30%)** — Total and monthly downloads, GitHub stars, and forks. Logarithmic scaling prevents top-heavy scores.

**Community (15%)** — Contributors, dependents, forks, watchers, and maintainers. Measures real ecosystem engagement.

**Maturity (30%)** — Project age, version count, PHP version support, and release stability.

###  Release Activity

Cadence

Every ~38 days

Recently: every ~24 days

Total

21

Last Release

2548d ago

Major Versions

v0.10.1 → v1.0.02019-05-20

### Community

Maintainers

![](https://www.gravatar.com/avatar/f3474f7a78027ecd07a4192c67e3c1073e86d393cf06dee1f36d847aa655cfd4?d=identicon)[b7d6f001](/maintainers/b7d6f001)

---

Top Contributors

[![anonymoussc](https://avatars.githubusercontent.com/u/9535227?v=4)](https://github.com/anonymoussc "anonymoussc (92 commits)")

### Embed Badge

![Health badge](/badges/consigliere-signal/health.svg)

```
[![Health](https://phpackages.com/badges/consigliere-signal/health.svg)](https://phpackages.com/packages/consigliere-signal)
```

###  Alternatives

[psalm/plugin-laravel

Psalm plugin for Laravel

3355.3M337](/packages/psalm-plugin-laravel)[illuminate/events

The Illuminate Events package.

13557.0M2.1k](/packages/illuminate-events)[illuminate/pagination

The Illuminate Pagination package.

12234.1M1.0k](/packages/illuminate-pagination)[laravel/ai

The official AI SDK for Laravel.

1.0k3.2M169](/packages/laravel-ai)[illuminate/pipeline

The Illuminate Pipeline package.

9349.2M273](/packages/illuminate-pipeline)[illuminate/session

The Illuminate Session package.

9939.3M829](/packages/illuminate-session)

PHPackages © 2026

[Directory](/)[Categories](/categories)[Trending](/trending)[Changelog](/changelog)[Analyze](/analyze)
