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

Tracing for debugging and performance management #1304

Open
kayakr opened this issue Oct 11, 2019 · 0 comments
Open

Tracing for debugging and performance management #1304

kayakr opened this issue Oct 11, 2019 · 0 comments
Labels
Type: enhancement Identifies work on an enhancement to the Islandora codebase

Comments

@kayakr
Copy link
Contributor

kayakr commented Oct 11, 2019

As a developer seeking to debug Islandora 8, or a system administrator wanting to understand performance, I want to have easy access to logs across all of the components involved.

It is currently very challenging to diagnose issues such as failed derivative generation in Islandora 8, due to the numerous components involved, especially if some requests succeed and others fail, e.g. due to size, or format. Easy access to logs and highlighting errors can assist rapid diagnosis.

An example of desirable observability is the UI available from Jaeger, now part of the CNCF OpenTracing project https://opentracing.io/. The screenshots below are from Jaeger log aggregation from the demo HotROD application. They show the inferred dependency graph, the trace data, and drilling into a particular span to see the SQL query that was executed.

AFAICT tracing requires each component to be monitored to be able to accept or pass through a trace context. Tags can be added to provide global context, e.g. user or role, so that a derivative operation can be matched with a specific user.

jaeger-dag shows the components involved in a trace:
jaeger-dag
jaeger-trace shows the various services involved in a trace, their timing, highlighted errors, etc.:
jaeger-trace
jaeger-span-detail shows the detailed data for a given span, including arbitrary name-value pairs, the actual SQL command, etc.
jaeger-span-detail

Notes:

Also relevant:

@kstapelfeldt kstapelfeldt added Type: enhancement Identifies work on an enhancement to the Islandora codebase and removed enhancement labels Sep 25, 2021
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Type: enhancement Identifies work on an enhancement to the Islandora codebase
Projects
Development

No branches or pull requests

2 participants