Skip to content
Edson Francisco
  • Reliability, DevOps & legacy

laravel-teams-logging

Maintained fork of a Composer package that sends Laravel logs to Microsoft Teams, used in production by FAMS.

Period
2022
Status
In production
Role
Fork maintainer and Packagist publisher

Problem

The FAMS team needed to know about exceptions on client servers as they happened, without running an observability stack. The original 2018 package did not support the Laravel version FAMS used.

Solution

In November 2022 Edson forked Sabar Tampubolon's package, renamed the namespace, fixed return types and card styling, redid the per-level avatars and published it on Packagist. FAMS uses it as a teams channel, switched on by a config flag.

Technical decisions

  1. 01

    Custom Monolog channel

    It plugs into config/logging.php with 'via' => LoggerChannel::class, without touching application code.

  2. 02

    Colour and avatar per PSR-3 level

    Each level, from debug to emergency, has its own colour and avatar, so a warning is easy to tell from a failure in the chat.

  3. 03

    Enabled per environment

    In FAMS the channel only joins the log stack when the flag is on, so test servers don't flood the channel.

Images

01 / 02 — laravel-teams-logging repository on GitHub, marked as a fork of the original project

Technologies

  • PHP
  • Laravel

Verifiable results

used in production by the backend
FAMS