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

chore: Update logging to use layr-labs/eigensdk-go #264

Merged
merged 15 commits into from
Feb 2, 2025

Conversation

ethenotethan
Copy link
Collaborator

@ethenotethan ethenotethan commented Jan 29, 2025

Fixes Issue

Fixes #

Changes proposed

Updates all logging references to use eigengo-sdk/logging. This ensures better compatibility with the mono repo. Also refactored our metrics to no longer be an OP dependency and instead a local one 😄

More specifically:

  • Use same logging software as monorepo (mostly). There are some conflicts with urfave/cli that we currently mitigate by duplicating code.
  • Updated to latest eigenda commit - this required updating binding references as well as the encoder config.
  • Deprecate flags no longer being used associated with op-service logging
  • Use custom metrics and not CLI provided by OP

Key Consideration

The slogger leveraged here dumps out json format logs. This could potentially bork existing loki / observability integrations that our customers use for viewing proxy output. We will need to articulate this very clearly in our release notes to ensure our customers have appropriate visibility.

Blocked by

Screenshots (Optional)

Note to reviewers

@ethenotethan ethenotethan changed the title chore: Update logging to use eigengo-sdk chore: Update logging to use layr-labs/eigengo-sdk Jan 29, 2025
@ethenotethan ethenotethan changed the title chore: Update logging to use layr-labs/eigengo-sdk chore: Update logging to use layr-labs/eigensdk-go Jan 29, 2025
@ethenotethan ethenotethan requested review from samlaf and litt3 January 30, 2025 19:02
README.md Show resolved Hide resolved
README.md Show resolved Hide resolved
common/logging_cli.go Outdated Show resolved Hide resolved
common/logging_cli.go Outdated Show resolved Hide resolved
common/logging_cli.go Outdated Show resolved Hide resolved
Name: common.PrefixFlag(flagPrefix, FormatFlagName),
Category: category,
Usage: "The format of the log file. Accepted options are 'json' and 'text'",
Value: "json",
Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

text?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

can update - but this is the default for eigenda

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Does it matter? Very unclear when we'll actually merge the two. And in the meantime we'll have to read these logs.

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Also this is a breaking change for users of this right? They might have had infra setup to ingest our previous log formats. Were those text?

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lemme evaluate - if both op-log and eigensdk-go/logger use the same slogger under the hood then it should be ok. I flagged this as a risk in the initial PR description.

Copy link
Collaborator Author

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

yeah output formats change: https://www.diffchecker.com/hFA97XKJ/

Let's just make sure to be very loud in our comms about this potential observability risk?

Copy link
Collaborator

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Yeah its not that bad. still a golang format key-value pair output, so should be fine.
image

Something looks off though. Some lines use different logging format than others.

cmd/server/entrypoint.go Outdated Show resolved Hide resolved
common/logging_cli.go Outdated Show resolved Hide resolved
metrics/cli.go Outdated Show resolved Hide resolved
verify/cert.go Outdated Show resolved Hide resolved
Copy link
Collaborator

@litt3 litt3 left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

lgtm

Copy link
Collaborator

@samlaf samlaf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Just realized this is potentially a breaking change for customers right? See #264 (comment)

@ethenotethan ethenotethan requested a review from samlaf February 2, 2025 17:44
Copy link
Collaborator

@samlaf samlaf left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM, except for the fact that we seem to be using different loggers in diffeent places. Is that because some of the library code is using a hardcoded eigenda logger?

@ethenotethan ethenotethan merged commit 1477835 into main Feb 2, 2025
9 checks passed
@ethenotethan ethenotethan deleted the epociask--chore-update-logger-eigen-sdk branch February 2, 2025 22:02
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants