feat: Replace Epsagon with Lumigo#1168
Merged
Merged
Conversation
Lumigo confirmed that the global `addExecutionTag` works in both manually-traced and auto-traced functions.
This matches what Lumigo uses internally, and will allow `LoggerService` to work with auto-traced functions without having to manually add the token to the service.
Coerce the Lumigo wrapper to our handler type instead of broadening the handler type. Fixes failing tests.
zhibek
suggested changes
Oct 18, 2023
Contributor
zhibek
left a comment
There was a problem hiding this comment.
Thanks @seb-cr. The implementation looks good to me, but I have questions about how this will work while auto-tracing is enabled (it's possible I've misunderstood how auto-tracing works).
I'm also requesting the auto vs manual setup of Lumigo be briefly explained in the in-line code documentation where we initialise the tracer.
corinja
approved these changes
Oct 19, 2023
Member
corinja
left a comment
There was a problem hiding this comment.
This is really good. The readme changes and Lumigo tests are very clear.
zhibek
approved these changes
Oct 19, 2023
Contributor
zhibek
left a comment
There was a problem hiding this comment.
With Lumigo confirming that "double-wrapping" is fine, I don't see the need for further changes. Looks good to me!
|
🎉 This PR is included in version 2.0.0-beta.8 🎉 The release is available on: Your semantic-release bot 📦🚀 |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Epsagon is no longer operating. They took down their website on 3 October and backend services have been gradually removed, and since 10 October any service still making requests to Espagon servers faces delays and Lambda timeouts.
We have now migrated to Lumigo. Their platform supports auto-tracing, allowing us to begin monitoring without deploying updates to Lambda Wrapper, however we are missing our metrics and labels which correspond to Execution Tags in Lumigo.
This PR makes the change to wrap handlers with Lumigo's tracer, and updates our logger to use Execution Tags for metrics and labels. To enable Lumigo tracing and tags, set
LUMIGO_TRACER_TOKENin your Lambda environment to your Lumigo token. Note that if you have enabled auto-tracing, this will be set automatically and tracing should "just work".There are a couple of other little things that need doing (e.g. removing the
raiseOnEpsagonflag) that I'll cover in separate PRs.Jira: ENG-2764
BREAKING CHANGE: We no longer use Epsagon for monitoring. Lambda Wrapper now supports Lumigo instead.