Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Added exception monitoring client #243

Merged
merged 67 commits into from
Jan 11, 2022
Merged
Changes from 1 commit
Commits
Show all changes
67 commits
Select commit Hold shift + click to select a range
0460330
Added ErrorEvent to capture details about a \Throwable in the expecte…
asgrim Sep 14, 2021
0cd0aa2
Added utility class to gzip the payload
asgrim Sep 14, 2021
979f79d
Added basic implementation of ErrorReportingClient using Guzzle
asgrim Sep 14, 2021
df578ac
Add accessor for request ID to Agent
asgrim Sep 14, 2021
a272508
Added ErrorHandling class with initial integration test
asgrim Sep 14, 2021
7605250
Updated expected shape for traces and request parameters
asgrim Sep 14, 2021
86efe61
Removed requestId method from Agent
asgrim Sep 14, 2021
77188d5
Instantiate default ScoutErrorHandling implementation in Agent::fromC…
asgrim Sep 14, 2021
32847d9
Make RequestId optional in the error reporting to ensure it always ge…
asgrim Sep 14, 2021
d1a6910
Extract application root finding into FindApplicationRoot
asgrim Sep 14, 2021
a83f4e9
Format trace in ErrorEvent to expected format for Scout
asgrim Sep 15, 2021
6120433
Added configuration options from Python agent to configure error repo…
asgrim Sep 15, 2021
e74ed05
Added some basic debug logging to ScoutErrorHandling
asgrim Sep 16, 2021
a9f02dd
Added uncaught exception test for integration tests
asgrim Sep 23, 2021
1796d7a
Use Request generated path in ErrorEvent creation
asgrim Sep 23, 2021
b832570
Extract filtering of given parameters into a separate helper
asgrim Sep 23, 2021
1a1f537
Pass session and env variables through filtering for ErrorEvent
asgrim Sep 23, 2021
0ea331a
Added real hostname from Config or gethostname() using consistent helper
asgrim Sep 23, 2021
cd71d9e
Offload superglobal retrieval to static helper
asgrim Sep 23, 2021
0e99b7c
Extract RootPackageGitSha function to re-usable static helper
asgrim Sep 23, 2021
a19b39e
Build full request URI for ErrorEvent
asgrim Sep 24, 2021
eec01e6
Filter and flatten request parameters into ErrorEvent better
asgrim Sep 24, 2021
e739b84
Pass tags from Request into ErrorEvent context
asgrim Sep 27, 2021
3788206
Push controller or job name into request_components for ErrorEvent
asgrim Sep 27, 2021
7441783
Added configuration option for errors_filtered_params
asgrim Sep 29, 2021
c9c8032
Updated scout-apm-php to depend on php-http/discovery to find PSR-17 …
asgrim Sep 30, 2021
80766f1
Added incomplete unit tests for changeset
asgrim Sep 30, 2021
6d70112
Move superglobals into an injectable service to separate static insta…
asgrim Oct 5, 2021
d73fb85
Refactored DetermineHostname to be an injectable service
asgrim Oct 6, 2021
0f7571b
Refactored FindRootPackageGitSha to injectable service
asgrim Oct 6, 2021
add55b3
Define interface for FindApplicationRoot service
asgrim Oct 6, 2021
32dc947
Make FindRequestHeaders an injectable service
asgrim Oct 6, 2021
043b21f
Define an interface for LocateFileOrFolder
asgrim Oct 6, 2021
427f32f
Added testcases for Request->requestPath
asgrim Oct 7, 2021
2c23173
Added tests for error handling and new helpers
asgrim Oct 13, 2021
089b5c5
Removed todo for ERROR_TYPES_TO_CATCH
asgrim Oct 13, 2021
88a4788
Updated Psalm baseline for version update
asgrim Oct 28, 2021
f294766
Added recordThrowable method to Agent
asgrim Oct 28, 2021
7ed42f3
Added new magic facade method to ScoutApm Facade for Laravel integration
asgrim Oct 28, 2021
26b9e84
Added changelog entry
asgrim Oct 28, 2021
f7a35ac
Depend on Scouts internal TestLogger implementation not Psr\Log\Test
asgrim Oct 28, 2021
7c38ccd
Adjust number of paths skipped in LocateFileOrFolderUsingFilesystem s…
asgrim Oct 29, 2021
18f1013
Dependency fixes for GH Actions builds
asgrim Oct 29, 2021
aeff9bb
Enabled Symfony exception listener
asgrim Nov 8, 2021
c52461c
Updated ErrorReportingClient to expect an array of ErrorEvents for fo…
asgrim Nov 8, 2021
a2a7fd5
Made ErrorReporting an optional component which raises information wa…
asgrim Nov 9, 2021
72e2961
PHP 7.1 requires older Guzzle so install that for dev deps
asgrim Nov 9, 2021
0643660
Provide log file written in testUncaughtErrorsAreCapturedAndSentToSco…
asgrim Nov 11, 2021
5e41a59
Added E2E test for Laravel error reporting component
asgrim Nov 23, 2021
4fa3a04
Clarification in CHANGELOG for LocateFileOrFilder BC break
asgrim Dec 28, 2021
ea65fe6
Elevate dependency on FindRequestHeadersUsingServerGlobal to named co…
asgrim Dec 28, 2021
f523e81
RequireValidFilteredParameters is now internal API
asgrim Dec 28, 2021
e4126a0
Renamed ErrorEventJsonStructure type for clarity
asgrim Dec 28, 2021
9c16787
Exception must be class-string of Throwable
asgrim Dec 28, 2021
68f4664
Extract logic for determining port and host for current URL to be cle…
asgrim Dec 28, 2021
1068095
Check that controller/action keys are defined in ErrorEvent
asgrim Dec 28, 2021
23a1d12
Doc blocks provided for ErrorHandling interface
asgrim Dec 28, 2021
f9f08ae
Inject Superglobals into Request instead of global state load
asgrim Dec 28, 2021
4e0da3c
Use array_values(..)[0] instead of reset(..)
asgrim Dec 28, 2021
71f817c
Make it explicit that \Scoutapm\Helper\FilterParameters::flattenedFor…
asgrim Dec 28, 2021
42b25c6
Memoize application root in FindApplicationRootWithConfigOverride
asgrim Dec 28, 2021
a5c729c
Use Superglobals instead of getenv for Heroku override
asgrim Dec 28, 2021
5948dd1
Throw exception when invalid config value used for $filteredParameter
asgrim Dec 28, 2021
727ce10
Rename errorsUrl method and memoization property for clarity
asgrim Dec 28, 2021
000bdce
Added specific log message when HTTP 429 returned from error reportin…
asgrim Dec 29, 2021
bb41829
Silence deprecated errors in PHPUnit
asgrim Jan 11, 2022
e4167ee
Move registerListeners call to the default ErrorHandlingDiscoveryFactory
asgrim Jan 11, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Removed todo for ERROR_TYPES_TO_CATCH
asgrim committed Jan 11, 2022
commit 089b5c5b85bee669e4ef19ce990cd4d462617f72
1 change: 0 additions & 1 deletion src/Errors/ScoutErrorHandling.php
Original file line number Diff line number Diff line change
@@ -37,7 +37,6 @@

final class ScoutErrorHandling implements ErrorHandling
{
// @todo check these, they were copy/pasta from old client
private const ERROR_TYPES_TO_CATCH = [E_ERROR, E_PARSE, E_CORE_ERROR, E_COMPILE_ERROR, E_USER_ERROR];

/** @var ErrorReportingClient */