Skip to content

Commit 4d1c066

Browse files
authored
Merge pull request #50 from Henning256/main
customizable log level
2 parents 8b94dfd + ea8c2e4 commit 4d1c066

File tree

4 files changed

+46
-5
lines changed

4 files changed

+46
-5
lines changed

README.md

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -55,7 +55,12 @@ return [
5555
* The log channel used to write the request.
5656
*/
5757
'log_channel' => env('LOG_CHANNEL', 'stack'),
58-
58+
59+
/*
60+
* The log level used to log the request.
61+
*/
62+
'log_level' => 'info',
63+
5964
/*
6065
* Filter out body fields which will never be logged.
6166
*/

config/http-logger.php

Lines changed: 7 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -15,10 +15,15 @@
1515
'log_writer' => \Spatie\HttpLogger\DefaultLogWriter::class,
1616

1717
/*
18-
* The log channel used to write the request.
19-
*/
18+
* The log channel used to write the request.
19+
*/
2020
'log_channel' => env('LOG_CHANNEL', 'stack'),
2121

22+
/*
23+
* The log level used to log the request.
24+
*/
25+
'log_level' => 'info',
26+
2227
/*
2328
* Filter out body fields which will never be logged.
2429
*/

src/DefaultLogWriter.php

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ public function logRequest(Request $request)
1313
{
1414
$message = $this->formatMessage($this->getMessage($request));
1515

16-
Log::channel(config('http-logger.log_channel'))->info($message);
16+
Log::channel(config('http-logger.log_channel'))->log(config('http-logger.log_level', 'info'), $message);
1717
}
1818

1919
public function getMessage(Request $request)
@@ -37,7 +37,7 @@ protected function formatMessage(array $message)
3737
$headersAsJson = json_encode($message['headers']);
3838
$files = $message['files']->implode(',');
3939

40-
return "{$message['method']} {$message['uri']} - Body: {$bodyAsJson} - Headers: {$headersAsJson} - Files: ".$files;
40+
return "{$message['method']} {$message['uri']} - Body: {$bodyAsJson} - Headers: {$headersAsJson} - Files: " . $files;
4141
}
4242

4343
public function flatFiles($file)

tests/DefaultLogWriterTest.php

Lines changed: 31 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,4 +118,35 @@ public function it_logs_multiple_files_in_an_array()
118118
$this->assertStringContainsString('first.doc', $log);
119119
$this->assertStringContainsString('second.doc', $log);
120120
}
121+
122+
/** @test */
123+
public function it_logs_using_the_default_log_level()
124+
{
125+
$request = $this->makeRequest('post', $this->uri, [
126+
'name' => 'Name',
127+
]);
128+
129+
$this->logger->logRequest($request);
130+
131+
$log = $this->readLogFile();
132+
133+
$this->assertStringContainsString('testing.INFO', $log);
134+
$this->assertStringContainsString('"name":"Name', $log);
135+
}
136+
137+
/** @test */
138+
public function it_logs_using_the_configured_log_level()
139+
{
140+
config(['http-logger.log_level' => 'debug']);
141+
$request = $this->makeRequest('post', $this->uri, [
142+
'name' => 'Name',
143+
]);
144+
145+
$this->logger->logRequest($request);
146+
147+
$log = $this->readLogFile();
148+
149+
$this->assertStringContainsString('testing.DEBUG', $log);
150+
$this->assertStringContainsString('"name":"Name', $log);
151+
}
121152
}

0 commit comments

Comments
 (0)