gboquizosanchez/google-chat-channel

Laravel package to send logs to Google Chat

Maintainers

Package info

github.com/gboquizosanchez/google-chat-channel

Homepage

pkg:composer/gboquizosanchez/google-chat-channel

Statistics

Installs: 164

Dependents: 0

Suggesters: 0

Stars: 0

Open Issues: 1

1.1.0 2025-09-05 00:29 UTC

This package is auto-updated.

Last update: 2026-04-07 11:22:39 UTC


README

Google Chat Channel

gboquizosanchez/google-chat-channel

Laravel logging channel for Google Chat

Latest Stable Version Total Downloads PHP Laravel License: MIT

Get instant alerts in Google Chat when your Laravel app logs an error. No setup beyond a webhook URL.

Overview

A lightweight Laravel logging channel that sends log entries directly to a Google Chat space via webhooks. Messages are formatted as rich cards with emojis based on log level โ€” so your team can triage errors at a glance without leaving Chat.

โœจ Features

  • ๐Ÿš€ Real-time delivery โ€” Log entries sent instantly to your Google Chat space
  • ๐Ÿ“ฑ Rich formatting โ€” Cards with emojis and severity based on log level
  • โš™๏ธ Env-based config โ€” No config file to publish, just .env variables
  • ๐Ÿ”ง Context & exceptions โ€” Optionally include extra context and exception details
  • ๐Ÿ“Š Smart retries โ€” Built-in error handling for webhook failures
  • ๐Ÿ” Queue support โ€” Optionally queue log dispatch to avoid blocking requests

๐Ÿ“ฆ Installation

composer require gboquizosanchez/google-chat-channel

โš™๏ธ Configuration

Add the channel to your config/logging.php:

'channels' => [
    'google-chat' => [
        'driver' => 'custom',
        'via'    => \Boquizo\GoogleChatChannel\GoogleChatLogger::class,
    ],

    'stack' => [
        'driver'   => 'stack',
        'channels' => ['single', 'google-chat'],
    ],
],

Then set your webhook URL in .env:

GOOGLE_CHAT_WEBHOOK_URL=https://chat.googleapis.com/v1/spaces/XXX/messages?key=YYY&token=ZZZ

To get a webhook URL, open a Google Chat space โ†’ Manage webhooks โ†’ Add webhook.

Available environment variables

Variable Default Description
GOOGLE_CHAT_WEBHOOK_URL โ€” Required. Google Chat incoming webhook URL
GOOGLE_CHAT_LOG_LEVEL error Minimum log level to forward (debug, info, warning, error, ...)
GOOGLE_CHAT_IGNORE_CONTEXTS true Exclude context data from the message
GOOGLE_CHAT_IGNORE_EXCEPTIONS true Exclude exception details from the message
GOOGLE_CHAT_QUEUED false Queue log dispatch instead of sending synchronously

๐Ÿš€ Usage

Once configured, use Laravel's standard logging โ€” no changes needed in your code:

// Sent to Google Chat (at or above your configured level)
Log::error('Payment failed', ['order_id' => 1234]);
Log::critical('Database connection lost');

// Not sent if GOOGLE_CHAT_LOG_LEVEL=error
Log::info('User logged in');

Each message arrives in Chat as a formatted card showing the level, message, and optionally context or exception details.

Contributing

Contributions are welcome!

  • ๐Ÿ› Report bugs via GitHub Issues
  • ๐Ÿ’ก Suggest features or improvements
  • ๐Ÿ”ง Submit pull requests with fixes or enhancements

Credits

๐Ÿ“„ License

This package is open-source software licensed under the MIT License.