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

Remove instrumentation #1229

Merged
merged 1 commit into from
Nov 11, 2021
Merged

Remove instrumentation #1229

merged 1 commit into from
Nov 11, 2021

Conversation

schneems
Copy link
Contributor

Previously we used logplex to collect production performance statistics. It worked like this. We collect the stats, then stream them to a logplex app endpoint using l2met format. A logplex drain read from the data, serialized it into a Postgres database where we later wrote custom dashboards via SQL queries to find places to optimize.

That setup was ad-hoc. After we did the immediate perf work we decommissioned the drain and the Postgres database. We didn't remove the logplex integration or the instrumentation partially because we didn't know if we would need to do another round of performance analysis and partially because it was believed not removing it was "safer" (when this happened there were far fewer tests on the buildpack and developing on it was a far riskier endeavor).

We haven't used this in years and are in the process of re-writing the Ruby buildpack. Any future instrumentation and performance analysis will be done away from this codebase. We can safely remove the instrumentation, lpxc (used to send logs to the endpoint), dontenv (used to source the environment variable for logplex), and the logic around preserving and copying the .env file from prior builds.

#GUS-W-8216066

@schneems schneems force-pushed the schneems/86-lpxc branch 4 times, most recently from 579e48f to d8aeb41 Compare November 11, 2021 16:56
Previously we used logplex to collect production performance statistics. It worked like this. We collect the stats, then stream them to a logplex app endpoint using l2met format. A logplex drain read from the data, serialized it into a Postgres database where we later wrote custom dashboards via SQL queries to find places to optimize.

That setup was ad-hoc. After we did the immediate perf work we decommissioned the drain and the Postgres database. We didn't remove the logplex integration or the instrumentation partially because we didn't know if we would need to do another round of performance analysis and partially because it was believed not removing it was "safer" (when this happened there were far fewer tests on the buildpack and developing on it was a far riskier endeavor).

We haven't used this in years and are in the process of re-writing the Ruby buildpack. Any future instrumentation and performance analysis will be done away from this codebase. We can safely remove the instrumentation, lpxc (used to send logs to the endpoint), dontenv (used to source the environment variable for logplex), and the logic around preserving and copying the `.env` file from prior builds.

#GUS-W-8216066
@schneems schneems marked this pull request as ready for review November 11, 2021 17:17
@schneems schneems requested a review from a team as a code owner November 11, 2021 17:17
Copy link
Member

@edmorley edmorley left a comment

Choose a reason for hiding this comment

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

🎉

@schneems schneems merged commit 951fc72 into main Nov 11, 2021
@schneems schneems deleted the schneems/86-lpxc branch November 11, 2021 19: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.

2 participants