router
router copied to clipboard
jemalloc metrics
This PR adds the following new metrics when running Linux with the global-allocator feature:
- apollo_router_jemalloc_active: Total number of bytes in active pages allocated by the application.
- apollo_router_jemalloc_allocated: Total number of bytes allocated by the application.
- apollo_router_jemalloc_mapped: Total number of bytes in active extents mapped by the allocator.
- apollo_router_jemalloc_metadata: Total number of bytes dedicated to metadata, which comprise base allocations used for bootstrap-sensitive allocator metadata structures and internal allocations.
- apollo_router_jemalloc_resident: Maximum number of bytes in physically resident data pages mapped by the allocator, comprising all pages dedicated to allocator metadata, pages backing active allocations, and unused dirty pages.
- apollo_router_jemalloc_retained: Total number of bytes in virtual memory mappings that were retained rather than being returned to the operating system via e.g.
munmap(2)or similar.
Checklist
Complete the checklist (and note appropriate exceptions) before the PR is marked ready-for-review.
- [x] PR description explains the motivation for the change and relevant context for reviewing
- [x] PR description links appropriate GitHub/Jira tickets (creating when necessary)
- [x] Changeset is included for user-facing changes
- [x] Changes are compatible[^1]
- [x] Documentation[^2] completed
- [x] Performance impact assessed and acceptable
- [x] Metrics and logs are added[^3] and documented
- Tests added and passing[^4]
- [ ] Unit tests
- [x] Integration tests
- [ ] Manual tests, as necessary
Exceptions
Note any exceptions here
Notes
[^1]: It may be appropriate to bring upcoming changes to the attention of other (impacted) groups. Please endeavour to do this before seeking PR approval. The mechanism for doing this will vary considerably, so use your judgement as to how and when to do this.
[^2]: Configuration is an important part of many changes. Where applicable please try to document configuration examples.
[^3]: A lot of (if not most) features benefit from built-in observability and debug-level logs. Please read this guidance on metrics best-practices.
[^4]: Tick whichever testing boxes are applicable. If you are adding Manual Tests, please document the manual testing (extensively) in the Exceptions.
@Velfi, please consider creating a changeset entry in /.changesets/. These instructions describe the process and tooling.
✅ Docs preview ready
The preview is ready to be viewed. View the preview
File Changes
0 new, 7 changed, 1 removed
* graphos/routing/(latest)/security/jwt.mdx
* graphos/routing/(latest)/self-hosted/containerization/docker.mdx
* graphos/routing/(latest)/self-hosted/containerization/index.mdx
* graphos/routing/(latest)/self-hosted/containerization/kubernetes/other-considerations.mdx
* graphos/routing/(latest)/self-hosted/index.mdx
* graphos/routing/(latest)/_sidebar.yaml
* graphos/routing/v1/operations/subscriptions/index.mdx
- graphos/routing/(latest)/self-hosted/containerization/docker-router-only.mdx
Build ID: aa3f98dd98ae5cd6872aa81c
URL: https://www.apollographql.com/docs/deploy-preview/aa3f98dd98ae5cd6872aa81c
@mergify.io backport 1.x