ingoldsby/laravel-dashboard-google-analytics-realtime-tile

Laravel Dashboard 的 Google Analytics 实时面板

1.0.0 2020-06-09 01:09 UTC

This package is auto-updated.

Last update: 2024-09-09 11:14:23 UTC


README

Latest Version on Packagist Total Downloads

此面板可以在 Laravel Dashboard 上使用,以显示 Google Analytics 实时信息。

安装

您可以通过 composer 安装此包

composer require ingoldsby/laravel-dashboard-google-analytics-realtime-tile

Google Analytics 凭据

在开始使用此面板之前,请确保您系统上有正确的凭据。按照 实时报告 API 概述 上的说明注册以访问 API。当访问被批准后

  1. 启用 Google Analytics API。
  2. 创建一个具有相应权限的 服务帐户
  3. 导航到服务帐户并添加一个新的 JSON 私钥。将下载一个 JSON 文件 - 将其重命名为 'analytics-credentials.json' 并将其移动到您的 Laravel 根目录。

注意生成的 'Service Account ID'。它将遵循 "<service_account_name>@.iam.gserviceaccount.com" 的格式。

Google Analytics 视图

访问 Google Analytics 并导航到所需的视图(例如,帐户 > 属性 & 应用 > 视图)。注意视图名称下显示的 '视图 ID'。单击 '视图用户管理' 并添加新用户。电子邮件地址是 Google Analytics 凭据步骤中使用的 Service Account ID。

有关更多信息,请参阅 实时报告 API 开发者指南。同时考虑您的 API 请求配额和限制

使用方法

dashboard 配置文件中,您必须在 tiles 键中添加此配置。

  1. 输入您希望收集信息的视图 ID,例如 123456789。
  2. 如果您已更改建议的以下分析凭据 JSON 的名称和/或位置,请更新字段。
  3. 可以通过修改 urls_displayed 字段来限制在 URL 面板上显示的 URL 数量,默认值为 10。
  4. 根据您设置的活跃用户数量阈值,active users 面板可以更改背景。如果设置中没有 active_users_warning_threshold 字段,则没有阈值并且背景不会更改。设置为 0 将在活跃用户数为 0 时使用警告背景。设置为 10 将在活跃用户数为 10 或更少时使用警告背景。
// in config/dashboard.php

return [
    // ...
    'tiles' => [
        'google_analytics_realtime' => [
            'view_id' => '123456789',
            'key_file_location' => __DIR__ . '/../analytics-credentials.json',
            'urls_displayed' => 4,
            'active_users_warning_threshold' => 0,
        ]
    ],
];

app\Console\Kernel.php 中,您应该安排 \Ingoldsby\GoogleAnalyticsRealtimeTile\Commands\FetchGoogleAnalyticsRealtimeCommand 每分钟运行一次,具体取决于您的 Google API 配额和限制。

// in app/console/Kernel.php

protected function schedule(Schedule $schedule)
{
    // ...
    $schedule->command(\Ingoldsby\GoogleAnalyticsRealtimeTile\Commands\FetchGoogleAnalyticsRealtimeCommand::class)->everyMinute();
}

在您的仪表板视图中,您可以使用三个不同的面板

  • livewire:google-analytics-realtime-active-users-tile
  • livewire:google-analytics-realtime-devices-tile
  • livewire:google-analytics-realtime-urls-tile
<x-dashboard>
    <livewire:google-analytics-realtime-active-users-tile position="a1:a4" />
    <livewire:google-analytics-realtime-devices-tile position="b1:b4" />
    <livewire:google-analytics-realtime-urls-tile position="a5:b8" />
</x-dashboard>

上面的布局将生成类似的内容

Dashboard tiles

测试

composer test

变更日志

请参阅变更日志了解最近发生的更改。

贡献

请参阅贡献指南获取详细信息。

安全

如果您发现任何安全相关的问题,请通过电子邮件联系,而不是使用问题跟踪器。

支持Spatie

我从Spatie的各种包中学到了很多,包括Mailcoach,如果您想了解更多信息,我会推荐您查看它们。

通过观看Spatie的付费视频课程,了解如何创建这样一个包

Laravel Package training

Spatie在创建最佳开源包方面投入了大量资源。您可以通过购买他们的付费产品来支持他们。

致谢

许可证

MIT许可证(MIT)。请参阅许可证文件获取更多信息。