Looking to hire Laravel developers? Try LaraJobs

laravel-pulse maintained by pixielity

Description
Laravel Pulse real-time monitoring with automatic card and recorder discovery for Pixielity applications
Last update
2026/02/09 15:03 (dev-main)
License
Downloads
0

Comments
comments powered by Disqus

Laravel Pulse real-time monitoring with automatic card and recorder discovery for Pixielity applications.

📑 Table of Contents

🌟 Overview

The Telemetry Pulse package provides a streamlined way to extend Laravel Pulse. With automatic discovery of cards, recorders, and filters using PHP 8 attributes, you can focus on building monitoring logic without worrying about manual registration.

📦 Installation

This package is included with the main pixielity/laravel-telemetry package. To install separately:

composer require pixielity/laravel-telemetry-pulse

✨ Features

  • Automatic Card Discovery: Tag Livewire components with #[AsCard] to add them to the dashboard.
  • Easy Recorder Registration: Use #[AsRecorder] to define custom data collection logic.
  • Dynamic Filtering: Apply #[AsFilter] for custom data scoping and grouping.

🎯 Attributes

AsCard

Marks a Livewire component as a Pulse dashboard card.

Properties:

  • cols: Number of grid columns (default: 4).
  • rows: Number of grid rows (default: 1).
  • enabled: (default: true) Whether the card is active.

AsRecorder

Marks a class as a Pulse data recorder.

Properties:

  • enabled: (default: true) Whether the recorder is active.
  • sampleRate: (default: 1.0) Percentage of events to record (0.0 to 1.0).
  • priority: (default: 0) Execution priority.

AsFilter

Marks a class as a Pulse data filter.

Properties:

  • enabled: (default: true) Whether the filter is active.
  • priority: (default: 100) Execution priority.

💡 Examples

Check the .examples directory for real-world usage patterns.

Custom Recorder

use Pixielity\Pulse\Attributes\AsRecorder;

#[AsRecorder(sampleRate: 0.5)]
class PerformanceRecorder
{
    public function record($event): void
    {
        // Recording logic
    }
}