定制 lefuturiste/monolog-discord-handler 二次开发

按需修改功能、优化性能、对接业务系统,提供一站式技术支持

邮箱:yvsm@zunyunkeji.com | QQ:316430983 | 微信:yvsm316

lefuturiste/monolog-discord-handler

最新稳定版本:0.4

Composer 安装命令:

composer require lefuturiste/monolog-discord-handler

包简介

A simple monolog handler for support Discord webhooks

README 文档

README

Latest Stable Version Total Downloads License Monthly Downloads

A simple monolog handler for support Discord webhooks

Dependencies

  • PHP >= 8.1
  • Monolog >= 3.0

If you want to use this lib with older version of PHP, install versions prior to 0.4

1. Installing

Easy installation via composer. Still no idea what composer is? Find out here here.

composer require lefuturiste/monolog-discord-handler

2. Usage

Push this handler to your Monolog instance:

Single webhook URL

<?php
require 'vendor/autoload.php';

$log = new Monolog\Logger('your name');

$log->pushHandler(new DiscordHandler\DiscordHandler('https://discordapp.com/api/webhooks/xxx/yyy', 'name', 'subname', 'DEBUG'));

Multiple webhook URLs

<?php
require 'vendor/autoload.php';

$log = new Monolog\Logger('your name');

$log->pushHandler(new DiscordHandler\DiscordHandler([
  'https://discordapp.com/api/webhooks/xxx/yyy',
  'https://discordapp.com/api/webhooks/xxx/yyy'
], 'name', 'subname', 'DEBUG'));

Use configuration

You can customize the default message and datetime format.

<?php
require 'vendor/autoload.php';

$log = new Monolog\Logger('name');

$handler = new DiscordHandler\DiscordHandler('https://discordapp.com/api/webhooks/xxx/yyy', 'name', 'subname', 'DEBUG');

$handler->getConfig()
    ->setMultiMsg(true)
    ->setMaxMessageLength(2000) // at least 50 characters
    ->setDatetimeFormat('Y/m/d H:i')
    ->setTemplate("{datetime} {name}: {message}");

// or you can create another Config instance and replace it:
$otherConfig = new DiscordHandler\Config();
$otherConfig->setWebHooks([
  'https://discordapp.com/api/webhooks/xxx/yyy', 
  'https://discordapp.com/api/webhooks/xxx/yyy'
]);

$handler->setConfig($otherConfig);

$log->pushHandler($handler);

3. Run examples

To run the example, you need:

  • Clone this repo
  • Run composer install at the root
  • Change directory into examples
  • Run with the DISCORD_WEBHOOK_URL env var set: env DISCORD_WEBHOOK_URL=https://… php ./simple_usage.php

4. Contribute

  • composer install
  • cp .env.example .env
  • composer test, for now we don't have unit tests.
  • run vendor/bin/phpstan analyse src -l 6 to run the static analyzer.

TODO

  • upgrade to monolog 3.0
  • upgrade to php 8.1
  • use type safe feature of php 8.1
  • delete outdated "units" tests that are in fact integration tests
  • add simple units test that will test for interfaces

统计信息

  • 总下载量: 101.45k
  • 月度下载量: 0
  • 日度下载量: 0
  • 收藏数: 34
  • 点击次数: 1
  • 依赖项目数: 4
  • 推荐数: 0

GitHub 信息

  • Stars: 34
  • Watchers: 1
  • Forks: 12
  • 开发语言: PHP

其他信息

  • 授权协议: MIT
  • 更新时间: 2017-08-23