@mrWan

Как из ларавел выкидывать логи например на почту, телеграмм?

Как отправлять письмо на почту или сообщение в телеграмм я знаю, возникли затруднения только как в ларавел по возникновению ошибок эти ошибки записывать в переменную и запускать свой метод, который и будет куда либо отправлять инфу об ошибках не затрагивая встроенное логирование из коробки. Открывал документацию по логированию, много чего перепробовал, но ничего не помогло.
  • Вопрос задан
  • 614 просмотров
Пригласить эксперта
Ответы на вопрос 3
в config/logging.php
'channels' => [
        'stack' => [
            'driver' => 'stack',
            'channels' => ['single', 'telegram'],
            'ignore_exceptions' => false,
        ],

        'telegram' => [
            'driver' => 'monolog',
            'handler' => Monolog\Handler\TelegramBotHandler::class,
            'with' => [
                'apiKey' => env('TELEGRAM_BOT_TOKEN'),
                'channel' => env('TELEGRAM_BOT_CHAT_ID'),
            ],
        ],
  ],
Ответ написан
Комментировать
xpert13
@xpert13
Full Stack Developer
app/Exceptions/Handler.php

class Handler extends ExceptionHandler
{
  /**
   * Report or log an exception.
   *
   * This is a great spot to send exceptions to Sentry, Bugsnag, etc.
   *
   * @param  \Exception  $exception
   * @return void
   */
  public function report(Exception $exception) {
    if ($this->shouldReport($exception)) {
        // Send report
    }
  }
Ответ написан
neuotq
@neuotq
Прокрастинация
На самом деле все просто, если почитать документацию, можно узнать про клевый класс App\Exceptions\Handler , который обрабатывает исключения, тебе нужен его метод report, который ты можешь переопределить и написать свою логику.
Вот даже легко гуглится пример с отправкой имейла (человек даже свой пакет сделал https://github.com/squareboat/sneaker ).
Короче говоря сюда, и вперед творить волшебство:
5b7bb11abd163261551026.png
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы