Laravel에서 Slack에 알림을 설정할 때 예외 발생시 스택 추적을 보내지 않도록

하고 싶었던 일



Laravel에서 Slack에 직접 로그를 알릴 때.
예외가 발생했을 때의 Slack 통지로.
스택 추적은 보내지 않기를 원합니다.
(Slack 알림 채널이 에라이가 되었다)

실행 환경



Laravel 5.7

했던 일



logging.php 에 설정 추가하면 완료!
        'slack' => [
            'driver' => 'slack',
            'url' => env('LOG_SLACK_WEBHOOK_URL'),
            'username' => 'Laravel Log',
            'emoji' => ':boom:',
            'level' => 'critical',
+           'context' => false,
        ],

어떻게 될까



이런 알림을 받게 됩니다.
끔찍하고 긴 스택 추적으로 흐르지 않고 헹구십시오.


(설정 실수한 채로 migrate를 실행한 그림)

문서에 실려 있지 않았지만 코드를 읽으면 발견했습니다.




vendor/laravel/framework/src/Illuminate/Log/LogManager.php
    /**
     * Create an instance of the Slack log driver.
     *
     * @param  array  $config
     * @return \Psr\Log\LoggerInterface
     */
    protected function createSlackDriver(array $config)
    {
        return new Monolog($this->parseChannel($config), [
            $this->prepareHandler(new SlackWebhookHandler(
                $config['url'],
                $config['channel'] ?? null,
                $config['username'] ?? 'Laravel',
                $config['attachment'] ?? true,
                $config['emoji'] ?? ':boom:',
                $config['short'] ?? false,
                $config['context'] ?? true,
                $this->level($config),
                $config['bubble'] ?? true,
                $config['exclude_fields'] ?? []
            ), $config),
        ]);
    }

인수는 여기
htps : // 기주 b. 이 m/세 l조차 k/모노ぉg/bぉb/마s테 r/src/모노ぉg/밥dぇr/Sぁc쿠ぇb호오 k반 dぇr. php#L40-L49

좋은 웹페이지 즐겨찾기