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

adds prom client and initial set of metrics #15

Merged
merged 2 commits into from
Jan 5, 2024

Conversation

aristidesstaffieri
Copy link
Contributor

Adds the prometheus client and initial set of metrics in order to setup metrics through k8s and Prometheus.

@aristidesstaffieri aristidesstaffieri self-assigned this Jan 4, 2024
Copy link

New dependencies detected. Learn more about Socket for GitHub ↗︎

Packages Version New capabilities Transitives Size Publisher
prom-client 15.1.0 filesystem +3 3.71 MB simenb

Copy link

🚨 Potential security issues detected. Learn more about Socket for GitHub ↗︎

To accept the risk, merge this PR and you will not be notified again.

Issue Package Version Note Source
Debug access prom-client 15.1.0
Filesystem access prom-client 15.1.0
Filesystem access bintrees 1.0.2

Next steps

What is debug access?

Uses debug, reflection and dynamic code execution features.

Removing the use of debug will reduce the risk of any reflection and dynamic code execution.

What is filesystem access?

Accesses the file system, and could potentially read sensitive data.

If a package must read the file system, clarify what it will read and ensure it reads only what it claims to. If appropriate, packages can leave file system access to consumers and operate on data passed to it instead.

Take a deeper look at the dependency

Take a moment to review the security alert above. Review the linked package source code to understand the potential risk. Ensure the package is not malicious before proceeding. If you're unsure how to proceed, reach out to your security team or ask the Socket team for help at support [AT] socket [DOT] dev.

Remove the package

If you happen to install a dependency that Socket reports as Known Malware you should immediately remove it and select a different dependency. For other alert types, you may may wish to investigate alternative packages or consider if there are other ways to mitigate the specific risk posed by the dependency.

Mark a package as acceptable risk

To ignore an alert, reply with a comment starting with @SocketSecurity ignore followed by a space separated list of package-name@version specifiers. e.g. @SocketSecurity ignore [email protected] bar@* or ignore all packages with @SocketSecurity ignore-all

@aristidesstaffieri aristidesstaffieri merged commit 733ad67 into main Jan 5, 2024
2 of 3 checks passed
@aristidesstaffieri aristidesstaffieri deleted the prom-metrics-v1 branch January 5, 2024 15:53
Comment on lines +60 to +67
instance.route({
method: "GET",
url: "/metrics",
handler: async (_request, reply) => {
reply.header("Content-Type", register.contentType);
register.metrics().then((data) => reply.code(200).send(data));
},
});
Copy link

Choose a reason for hiding this comment

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

Which port will metrics be exposed on?

Copy link
Contributor Author

Choose a reason for hiding this comment

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

It's 8080 right now

Copy link

Choose a reason for hiding this comment

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

I this separate from the main application port? If you use the same port it means that metrics might get exposed on the internet.
It's often useful expose metrics on a separate port

Copy link
Contributor Author

Choose a reason for hiding this comment

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

oh yeah good point, it is on the same port as the app so I'll update that to a metrics specific port. Thank you!

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