Skip to content

Commit f59aa93

Browse files
committed
Enhance Telegram logging: add rate limit checks and include session data in exception view
1 parent cbddd20 commit f59aa93

File tree

4 files changed

+20
-10
lines changed

4 files changed

+20
-10
lines changed

src/Providers/TelegramLoggerServiceProvider.php

Lines changed: 0 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -65,15 +65,11 @@ public function boot(): void
6565
'User Agent' => request()->header('User-Agent'),
6666
];
6767

68-
$requestParameters = request()->all();
69-
70-
7168
telegramLog()->error(
7269
(new FormatExceptionForTelegramType())
7370
->execute(
7471
$e,
7572
$additionalData,
76-
$requestParameters
7773
)
7874
);
7975
}

src/Telegram/TelegramLog.php

Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -50,12 +50,19 @@ protected function rateLimiter($message): bool
5050
$maxAttempts = config('telegram-logger.max_attempts', 1);
5151

5252
if (RateLimiter::tooManyAttempts($key, $maxAttempts)) {
53+
info('Telegram rate limit exceeded for message: ' . $message);
54+
55+
return false;
56+
}
57+
58+
if (RateLimiter::tooManyAttempts('telegram_logger', 5)){
5359
info('Telegram rate limit exceeded');
5460

5561
return false;
5662
}
5763

5864
RateLimiter::hit($key, $decaySeconds);
65+
RateLimiter::hit('telegram_logger');
5966

6067
return true;
6168
}

src/Types/FormatExceptionForTelegramType.php

Lines changed: 1 addition & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -9,12 +9,11 @@ class FormatExceptionForTelegramType
99
/**
1010
* @throws Throwable
1111
*/
12-
public function execute(Throwable $exception, $additionalData = [], $requestParameters = []): string
12+
public function execute(Throwable $exception, $additionalData = []): string
1313
{
1414
return view('telegram-logger::types.exception', [
1515
'exception' => $exception,
1616
'additionalData' => $additionalData,
17-
'requestParameters' => $requestParameters,
1817
'trace' => $this->formatTrace($exception),
1918
])->render();
2019
}

src/resources/views/types/exception.blade.php

Lines changed: 12 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -3,21 +3,29 @@
33
<b>File:</b> <code>{{ $exception->getFile() }}</code>
44
<b>Line:</b> <code>{{ $exception->getLine() }}</code>
55

6-
<code>_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-</code>
76

87
@if (!empty($additionalData))
8+
<code>_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-</code>
9+
910
<b>Additional Data:</b>
1011
@foreach ($additionalData as $key => $value)
1112
<b>{{ $key }}:</b> <code>{{ $value }}</code>
1213
@endforeach
1314
@endif
1415

15-
---
16+
17+
@if (!empty(request()->all()))
1618
<code>_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-</code>
1719

18-
@if (!empty($requestParameters))
1920
<b>Request Parameters:</b>
20-
<pre>{{ json_encode($requestParameters, JSON_PRETTY_PRINT) }}</pre>
21+
<pre>{{ json_encode(request()->all(), JSON_PRETTY_PRINT) }}</pre>
22+
@endif
23+
24+
@if (!empty(session()->all()))
25+
<code>_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-</code>
26+
27+
<b>Session Data:</b>
28+
<pre>{{ json_encode(session()->all(), JSON_PRETTY_PRINT) }}</pre>
2129
@endif
2230

2331
<code>_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-_-</code>

0 commit comments

Comments
 (0)