A simple package to forward Laravel application logs to a Kinesis stream.
Require the package with composer:
composer require pod-point/laravel-monolog-kinesis
For Laravel < 6.0 you can use pod-point/laravel-monolog-kinesis:^2.0
.
Add your AWS key ID, secret and default region to your config/services.php
:
<?php
return [
// ...
'kinesis' => [
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
],
];
Simply use the kinesis
driver on any of your channels within your config/logging.php
:
<?php
return [
// ...
'channels' => [
'some_channel' => [
'driver' => 'kinesis',
'stream' => 'some_stream_name',
'level' => 'info', // default level is debug
],
],
];
You can optionally specify a different key
, secret
and region
at the channel level too if necessary:
<?php
return [
// ...
'channels' => [
'some_channel' => [
'driver' => 'kinesis',
'stream' => env('LOGGING_KINESIS_STREAM'),
'level' => env('LOG_LEVEL', 'debug'),
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
],
],
];
You can configure a set of http
options that are applied to http requests and transfers created when using the AWS SDK from both the service
and channel
levels.
// ...
'key' => env('AWS_ACCESS_KEY_ID'),
'secret' => env('AWS_SECRET_ACCESS_KEY'),
'region' => env('AWS_DEFAULT_REGION', 'us-east-1'),
'http' => [
'verify' => false
]
More details about all the supported options can be found from the AWS documentation.
If you are using an AWS Key, remember to add the kinesis:PutRecord
and kinesis:PutRecords
permissions to this user.
Please see CHANGELOG for more information on what has changed recently.
Please see CONTRIBUTING for details.
Travel shouldn't damage the earth 🌍
Made with ❤️ at Pod Point