Laravel Log Driver for sending Block Kit messages to incoming webhooks in Slack.
composer require sunaoka/laravel-slack-block-kit-web-hook-driver
config/logging.php
configuration file:
return [
'channels' => [
'slack' => [
'driver' => 'custom', // Set "custom" driver
'url' => env('LOG_SLACK_WEBHOOK_URL'),
'username' => env('LOG_SLACK_USERNAME', 'Laravel Log'),
'level' => env('LOG_LEVEL', 'info'),
'via' => \Sunaoka\Laravel\Log\Slack::class
],
],
];
<?php
$blocks = [
'username' => config('logging.channels.slack.username'),
'blocks' => [
[
'type' => 'section',
'text' => [
'type' => 'mrkdwn',
'text' => "You have a new request:\n*<fakeLink.toEmployeeProfile.com|Fred Enriquez - New device request>*",
],
],
[
'type' => 'section',
'fields' => [
['type' => 'mrkdwn', 'text' => "*Type:*\nComputer (laptop)"],
['type' => 'mrkdwn', 'text' => "*When:*\nSubmitted Aut 10"],
['type' => 'mrkdwn', 'text' => "*Last Update:*\nMar 10, 2015 (3 years, 5 months)"],
['type' => 'mrkdwn', 'text' => "*Reason:*\nAll vowel keys aren't working."],
['type' => 'mrkdwn', 'text' => "*Specs:*\n\"Cheetah Pro 15\" - Fast, really fast\""],
],
],
],
];
\Log::channel('info')->error(json_encode($blocks));