diff --git a/app/Extensions/Monolog/Handler/FluentdHandler.php b/app/Extensions/Monolog/Handler/FluentdHandler.php new file mode 100644 index 00000000..3326e548 --- /dev/null +++ b/app/Extensions/Monolog/Handler/FluentdHandler.php @@ -0,0 +1,29 @@ +logger = new \Fluent\Logger\FluentLogger(config('logger.host'), config('logger.port')); + } + + protected function getDefaultFormatter() + { + return new GelfMessageFormatter; + } + + public function write(array $record) + { + $this->logger->post(config('logger.tag.'. config('app.env')), $record['formatted']->toArray()); + } +} diff --git a/bootstrap/app.php b/bootstrap/app.php index 2f9d3e3d..2cb6d251 100644 --- a/bootstrap/app.php +++ b/bootstrap/app.php @@ -44,8 +44,7 @@ $app->configureMonologUsing(function ($monolog) use($app){ $logLevel = \Monolog\Logger::toMonologLevel(config('app.log_level')); - if (App::environment(['devel', 'test'])){ -// if (App::environment(['local', 'demo'])){ + if (App::environment(['local', 'demo', 'production'])){ //graylog handler $fluentd = new \App\Extensions\Monolog\Handler\FluentdHandler($logLevel); diff --git a/composer.json b/composer.json index 32ef76fd..18bcdb39 100644 --- a/composer.json +++ b/composer.json @@ -10,6 +10,8 @@ "doctrine/dbal": "^2.5", "elasticsearch/elasticsearch": "^6.0", "fideloper/proxy": "~3.3", + "fluent/logger": "^1.0", + "graylog2/gelf-php": "^1.5", "intervention/image": "^2.4", "laravel/framework": "5.5.*", "laravel/scout": "^4.0", diff --git a/composer.lock b/composer.lock index 0b234b75..16ab2913 100644 --- a/composer.lock +++ b/composer.lock @@ -4,7 +4,7 @@ "Read more about it at https://getcomposer.org/doc/01-basic-usage.md#composer-lock-the-lock-file", "This file is @generated automatically" ], - "content-hash": "2afb334bfee057dbf768d86fdf924854", + "content-hash": "9f308e127dec0ffa5465b598aa708d45", "packages": [ { "name": "cviebrock/laravel-elasticsearch", @@ -787,6 +787,115 @@ ], "time": "2017-06-15T17:19:42+00:00" }, + { + "name": "fluent/logger", + "version": "v1.0.1", + "source": { + "type": "git", + "url": "https://github.com/fluent/fluent-logger-php.git", + "reference": "c5a19ba8eb5e15f9ade72afeffba6b6e7eb51155" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/fluent/fluent-logger-php/zipball/c5a19ba8eb5e15f9ade72afeffba6b6e7eb51155", + "reference": "c5a19ba8eb5e15f9ade72afeffba6b6e7eb51155", + "shasum": "" + }, + "require": { + "php": ">=5.3.0" + }, + "require-dev": { + "phpunit/phpunit": "~4.3", + "phpunit/phpunit-mock-objects": "2.3.0" + }, + "type": "library", + "autoload": { + "psr-4": { + "Fluent\\Logger\\": "src/" + } + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "Apache" + ], + "authors": [ + { + "name": "Shuhei Tanuma", + "email": "chobieee@gmail.com" + }, + { + "name": "Sotaro Karasawa", + "email": "sotarok@crocos.co.jp" + }, + { + "name": "DQNEO", + "email": "dqneoo@gmail.com" + } + ], + "description": "a logging library for Fluentd", + "homepage": "http://github.com/fluent/fluent-logger-php", + "keywords": [ + "log", + "logging" + ], + "time": "2017-02-15T07:14:53+00:00" + }, + { + "name": "graylog2/gelf-php", + "version": "1.5.5", + "source": { + "type": "git", + "url": "https://github.com/bzikarsky/gelf-php.git", + "reference": "c4e0743ba323459b6e62222107a0898e77d2fd6e" + }, + "dist": { + "type": "zip", + "url": "https://api.github.com/repos/bzikarsky/gelf-php/zipball/c4e0743ba323459b6e62222107a0898e77d2fd6e", + "reference": "c4e0743ba323459b6e62222107a0898e77d2fd6e", + "shasum": "" + }, + "require": { + "php": ">=5.3.9", + "psr/log": "~1.0" + }, + "provide": { + "psr/log-implementation": "~1.0" + }, + "require-dev": { + "phpunit/phpunit": "~4.3", + "squizlabs/php_codesniffer": "~2.0" + }, + "type": "library", + "extra": { + "branch-alias": { + "dev-master": "1.4.x-dev" + } + }, + "autoload": { + "psr-4": { + "Gelf\\": "src/Gelf" + }, + "files": [ + "src/check_technical_requirements.php" + ] + }, + "notification-url": "https://packagist.org/downloads/", + "license": [ + "MIT" + ], + "authors": [ + { + "name": "Benjamin Zikarsky", + "email": "benjamin@zikarsky.de" + }, + { + "name": "gelf-php contributors", + "homepage": "https://github.com/bzikarsky/gelf-php/contributors" + } + ], + "description": "A php implementation to send log-messages to a GELF compatible backend like Graylog2.", + "time": "2017-06-24T10:38:25+00:00" + }, { "name": "guzzlehttp/psr7", "version": "1.4.2", @@ -1458,16 +1567,16 @@ }, { "name": "mcamara/laravel-localization", - "version": "1.3.9", + "version": "1.3.10", "source": { "type": "git", "url": "https://github.com/mcamara/laravel-localization.git", - "reference": "3764780b0ee3ebb4731632b5ff70ca594fd1735f" + "reference": "568d3197fdef4b50076fe3f9105474591f188e42" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/mcamara/laravel-localization/zipball/3764780b0ee3ebb4731632b5ff70ca594fd1735f", - "reference": "3764780b0ee3ebb4731632b5ff70ca594fd1735f", + "url": "https://api.github.com/repos/mcamara/laravel-localization/zipball/568d3197fdef4b50076fe3f9105474591f188e42", + "reference": "568d3197fdef4b50076fe3f9105474591f188e42", "shasum": "" }, "require": { @@ -1516,7 +1625,7 @@ "localization", "php" ], - "time": "2018-04-30T17:28:41+00:00" + "time": "2018-07-26T13:49:01+00:00" }, { "name": "monolog/monolog", @@ -2063,21 +2172,22 @@ }, { "name": "ramsey/uuid", - "version": "3.7.3", + "version": "3.8.0", "source": { "type": "git", "url": "https://github.com/ramsey/uuid.git", - "reference": "44abcdad877d9a46685a3a4d221e3b2c4b87cb76" + "reference": "d09ea80159c1929d75b3f9c60504d613aeb4a1e3" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/ramsey/uuid/zipball/44abcdad877d9a46685a3a4d221e3b2c4b87cb76", - "reference": "44abcdad877d9a46685a3a4d221e3b2c4b87cb76", + "url": "https://api.github.com/repos/ramsey/uuid/zipball/d09ea80159c1929d75b3f9c60504d613aeb4a1e3", + "reference": "d09ea80159c1929d75b3f9c60504d613aeb4a1e3", "shasum": "" }, "require": { - "paragonie/random_compat": "^1.0|^2.0", - "php": "^5.4 || ^7.0" + "paragonie/random_compat": "^1.0|^2.0|9.99.99", + "php": "^5.4 || ^7.0", + "symfony/polyfill-ctype": "^1.8" }, "replace": { "rhumsaa/uuid": "self.version" @@ -2085,16 +2195,17 @@ "require-dev": { "codeception/aspect-mock": "^1.0 | ~2.0.0", "doctrine/annotations": "~1.2.0", - "goaop/framework": "1.0.0-alpha.2 | ^1.0 | ^2.1", + "goaop/framework": "1.0.0-alpha.2 | ^1.0 | ~2.1.0", "ircmaxell/random-lib": "^1.1", "jakub-onderka/php-parallel-lint": "^0.9.0", "mockery/mockery": "^0.9.9", "moontoast/math": "^1.1", "php-mock/php-mock-phpunit": "^0.3|^1.1", - "phpunit/phpunit": "^4.7|^5.0", + "phpunit/phpunit": "^4.7|^5.0|^6.5", "squizlabs/php_codesniffer": "^2.3" }, "suggest": { + "ext-ctype": "Provides support for PHP Ctype functions", "ext-libsodium": "Provides the PECL libsodium extension for use with the SodiumRandomGenerator", "ext-uuid": "Provides the PECL UUID extension for use with the PeclUuidTimeGenerator and PeclUuidRandomGenerator", "ircmaxell/random-lib": "Provides RandomLib for use with the RandomLibAdapter", @@ -2139,7 +2250,7 @@ "identifier", "uuid" ], - "time": "2018-01-20T00:28:24+00:00" + "time": "2018-07-19T23:38:55+00:00" }, { "name": "react/promise", @@ -2248,16 +2359,16 @@ }, { "name": "symfony/console", - "version": "v3.4.12", + "version": "v3.4.13", "source": { "type": "git", "url": "https://github.com/symfony/console.git", - "reference": "1b97071a26d028c9bd4588264e101e14f6e7cd00" + "reference": "e54f84c50e3b12972e7750edfc5ca84b2284c44e" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/console/zipball/1b97071a26d028c9bd4588264e101e14f6e7cd00", - "reference": "1b97071a26d028c9bd4588264e101e14f6e7cd00", + "url": "https://api.github.com/repos/symfony/console/zipball/e54f84c50e3b12972e7750edfc5ca84b2284c44e", + "reference": "e54f84c50e3b12972e7750edfc5ca84b2284c44e", "shasum": "" }, "require": { @@ -2313,11 +2424,11 @@ ], "description": "Symfony Console Component", "homepage": "https://symfony.com", - "time": "2018-05-23T05:02:55+00:00" + "time": "2018-07-10T14:02:11+00:00" }, { "name": "symfony/css-selector", - "version": "v3.4.12", + "version": "v3.4.13", "source": { "type": "git", "url": "https://github.com/symfony/css-selector.git", @@ -2370,16 +2481,16 @@ }, { "name": "symfony/debug", - "version": "v3.4.12", + "version": "v3.4.13", "source": { "type": "git", "url": "https://github.com/symfony/debug.git", - "reference": "47e6788c5b151cf0cfdf3329116bf33800632d75" + "reference": "0e3ca9cbde90fffec8038f4d4e16fd4046bbd018" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/debug/zipball/47e6788c5b151cf0cfdf3329116bf33800632d75", - "reference": "47e6788c5b151cf0cfdf3329116bf33800632d75", + "url": "https://api.github.com/repos/symfony/debug/zipball/0e3ca9cbde90fffec8038f4d4e16fd4046bbd018", + "reference": "0e3ca9cbde90fffec8038f4d4e16fd4046bbd018", "shasum": "" }, "require": { @@ -2422,11 +2533,11 @@ ], "description": "Symfony Debug Component", "homepage": "https://symfony.com", - "time": "2018-06-25T11:10:40+00:00" + "time": "2018-06-26T08:45:54+00:00" }, { "name": "symfony/event-dispatcher", - "version": "v3.4.12", + "version": "v3.4.13", "source": { "type": "git", "url": "https://github.com/symfony/event-dispatcher.git", @@ -2489,7 +2600,7 @@ }, { "name": "symfony/finder", - "version": "v3.4.12", + "version": "v3.4.13", "source": { "type": "git", "url": "https://github.com/symfony/finder.git", @@ -2538,16 +2649,16 @@ }, { "name": "symfony/http-foundation", - "version": "v3.4.12", + "version": "v3.4.13", "source": { "type": "git", "url": "https://github.com/symfony/http-foundation.git", - "reference": "1c28679fcbb0d9b35e4fd49fbb74d2ca4ea17bce" + "reference": "2b8e08c085e2dc7449ee6d55a238be87d3727c96" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-foundation/zipball/1c28679fcbb0d9b35e4fd49fbb74d2ca4ea17bce", - "reference": "1c28679fcbb0d9b35e4fd49fbb74d2ca4ea17bce", + "url": "https://api.github.com/repos/symfony/http-foundation/zipball/2b8e08c085e2dc7449ee6d55a238be87d3727c96", + "reference": "2b8e08c085e2dc7449ee6d55a238be87d3727c96", "shasum": "" }, "require": { @@ -2588,20 +2699,20 @@ ], "description": "Symfony HttpFoundation Component", "homepage": "https://symfony.com", - "time": "2018-06-21T11:10:19+00:00" + "time": "2018-07-19T07:08:28+00:00" }, { "name": "symfony/http-kernel", - "version": "v3.4.12", + "version": "v3.4.13", "source": { "type": "git", "url": "https://github.com/symfony/http-kernel.git", - "reference": "cb7edcdc47cab3c61c891e6e55337f8dd470d820" + "reference": "22a1d000d45f09966a363223548a150aec759e61" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/http-kernel/zipball/cb7edcdc47cab3c61c891e6e55337f8dd470d820", - "reference": "cb7edcdc47cab3c61c891e6e55337f8dd470d820", + "url": "https://api.github.com/repos/symfony/http-kernel/zipball/22a1d000d45f09966a363223548a150aec759e61", + "reference": "22a1d000d45f09966a363223548a150aec759e61", "shasum": "" }, "require": { @@ -2677,7 +2788,7 @@ ], "description": "Symfony HttpKernel Component", "homepage": "https://symfony.com", - "time": "2018-06-25T12:29:19+00:00" + "time": "2018-07-23T16:37:31+00:00" }, { "name": "symfony/polyfill-ctype", @@ -2854,16 +2965,16 @@ }, { "name": "symfony/process", - "version": "v3.4.12", + "version": "v3.4.13", "source": { "type": "git", "url": "https://github.com/symfony/process.git", - "reference": "acc5a37c706ace827962851b69705b24e71ca17c" + "reference": "f741672edfcfe3a2ea77569d419006f23281d909" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/process/zipball/acc5a37c706ace827962851b69705b24e71ca17c", - "reference": "acc5a37c706ace827962851b69705b24e71ca17c", + "url": "https://api.github.com/repos/symfony/process/zipball/f741672edfcfe3a2ea77569d419006f23281d909", + "reference": "f741672edfcfe3a2ea77569d419006f23281d909", "shasum": "" }, "require": { @@ -2899,11 +3010,11 @@ ], "description": "Symfony Process Component", "homepage": "https://symfony.com", - "time": "2018-05-30T04:24:30+00:00" + "time": "2018-07-09T09:01:07+00:00" }, { "name": "symfony/routing", - "version": "v3.4.12", + "version": "v3.4.13", "source": { "type": "git", "url": "https://github.com/symfony/routing.git", @@ -2980,16 +3091,16 @@ }, { "name": "symfony/translation", - "version": "v3.4.12", + "version": "v3.4.13", "source": { "type": "git", "url": "https://github.com/symfony/translation.git", - "reference": "7047f725e35eab768137c677f8c38e4a2a8e38fb" + "reference": "0d1c0965c3e82250b9786909cf584fd4a50c9c5b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/translation/zipball/7047f725e35eab768137c677f8c38e4a2a8e38fb", - "reference": "7047f725e35eab768137c677f8c38e4a2a8e38fb", + "url": "https://api.github.com/repos/symfony/translation/zipball/0d1c0965c3e82250b9786909cf584fd4a50c9c5b", + "reference": "0d1c0965c3e82250b9786909cf584fd4a50c9c5b", "shasum": "" }, "require": { @@ -3044,20 +3155,20 @@ ], "description": "Symfony Translation Component", "homepage": "https://symfony.com", - "time": "2018-05-21T10:06:52+00:00" + "time": "2018-07-23T08:18:36+00:00" }, { "name": "symfony/var-dumper", - "version": "v3.4.12", + "version": "v3.4.13", "source": { "type": "git", "url": "https://github.com/symfony/var-dumper.git", - "reference": "e173954a28a44a32c690815fbe4d0f2eac43accb" + "reference": "c501f46bb1eaf4c8d65ba070ab65a1986da1cd7f" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/symfony/var-dumper/zipball/e173954a28a44a32c690815fbe4d0f2eac43accb", - "reference": "e173954a28a44a32c690815fbe4d0f2eac43accb", + "url": "https://api.github.com/repos/symfony/var-dumper/zipball/c501f46bb1eaf4c8d65ba070ab65a1986da1cd7f", + "reference": "c501f46bb1eaf4c8d65ba070ab65a1986da1cd7f", "shasum": "" }, "require": { @@ -3113,7 +3224,7 @@ "debug", "dump" ], - "time": "2018-06-15T07:47:49+00:00" + "time": "2018-07-09T08:21:26+00:00" }, { "name": "teamtnt/laravel-scout-tntsearch-driver", @@ -3184,16 +3295,16 @@ }, { "name": "teamtnt/tntsearch", - "version": "v1.3.3", + "version": "v1.3.4", "source": { "type": "git", "url": "https://github.com/teamtnt/tntsearch.git", - "reference": "8447a36b016f51917592abc9f775e287e6a8ea93" + "reference": "40c4395cf04e089b6f2fd4dd98d4b1d09de1ce6b" }, "dist": { "type": "zip", - "url": "https://api.github.com/repos/teamtnt/tntsearch/zipball/8447a36b016f51917592abc9f775e287e6a8ea93", - "reference": "8447a36b016f51917592abc9f775e287e6a8ea93", + "url": "https://api.github.com/repos/teamtnt/tntsearch/zipball/40c4395cf04e089b6f2fd4dd98d4b1d09de1ce6b", + "reference": "40c4395cf04e089b6f2fd4dd98d4b1d09de1ce6b", "shasum": "" }, "require": { @@ -3236,7 +3347,7 @@ "teamtnt", "tntsearch" ], - "time": "2018-06-29T11:48:52+00:00" + "time": "2018-07-18T16:57:14+00:00" }, { "name": "tijsverkoyen/css-to-inline-styles", diff --git a/deploy.sh b/deploy.sh index d0316d2c..421becef 100755 --- a/deploy.sh +++ b/deploy.sh @@ -11,7 +11,7 @@ then fi # Install new composer packages -/usr/local/bin/composer install --prefer-dist --no-interaction +/usr/local/bin/composer install --no-interaction # Cache boost configuration and routes php artisan cache:clear