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

WIP New tracing infrastructure #2847

Closed
wants to merge 9 commits into from
Closed

WIP New tracing infrastructure #2847

wants to merge 9 commits into from

Conversation

deepfire
Copy link
Contributor

@deepfire deepfire commented Jun 21, 2021

This is the new tracing infrastructure, that is intended as replacement for iohk-monitoring-framework and the related integration code in cardano-node.

The documentation is at https://github.com/input-output-hk/cardano-node/tree/tracing-master/trace-dispatcher/docs/trace-dispatcher.md

TODO

Library trace-dispatcher

  • Add frequency limiting

    • Testen
  • Add continued message to frequency limiting

    • Testen
  • Add queue size trace forwarder to config

    • Testen
  • Add color arg to backend config?

    • Testen
  • Formatting optimization

    • Testen
  • Add check code for configuration and wiring

  • Framework functionality tests !!!

    • Privacy
    • DetailLevel
    • Backend routing
    • Backend formatting
    • Severity filtering
    • Freuqency limiting
  • Comment library code

  • Document configuration
    nix/workbench/profiles/node-services.nix
    scripts/lite/configuration/shelley-*.yaml
    ./scripts/lite/shelley-testnet.sh

Integration

  • Ensure completeness of set of Metrics

    • Add aggregation cases
  • Ressource stat tracers

    • Linux
    • Windows and Mac testing
  • Basic info tracers

  • Rebase on latest master

  • Fix privacy for all tracers!

  • Fix namespaces for all tracers

  • External changes:

    • Reconfigure call.
    • Reconfigure and forwarder? (Dont do)
    • Document call (with fileName).
    • No strictness annotations for: Mempool
  • Solution for: cardano-tracer does not see start of traces, because always connect after start of node

    • One possible solution: Have big queue in the node at startup
    • Implement
    • Test

Next steps

  • Benchmark trace-dispatcher in comparison to old tracers

  • Test forwarder cache performance

  • Test forwarder cache overflow

  • Second phase

    • Remove old tracers

@denisshevchenko
Copy link
Contributor

The first PR for the new tracing infrastructure is open: #2960

iohk-bors bot added a commit that referenced this pull request Jul 29, 2021
2960: CAD-3243: trace-forward library. r=deepfire a=denisshevchenko

This is `trace-forward` library: `typed-protocols`-based library allowing to forward tracing items from one process to another one. This is the first step toward a new tracing infrastructure (please see #2847). The `trace-dispatcher` will use this library to forward `TraceObject`s to external acceptors (for example, `cardano-tracer`).

You can think of this library as a **_replacement_** for old plugins [trace-forwarder](https://github.com/input-output-hk/iohk-monitoring-framework/tree/master/plugins/backend-trace-forwarder) and [trace-acceptor](https://github.com/input-output-hk/iohk-monitoring-framework/tree/master/plugins/backend-trace-acceptor) from `iohk-monitoring-framework`.

Co-authored-by: Denis Shevchenko <denis.shevchenko@iohk.io>
iohk-bors bot added a commit that referenced this pull request Aug 10, 2021
2960: CAD-3243: trace-forward library. r=denisshevchenko a=denisshevchenko

This is `trace-forward` library: `typed-protocols`-based library allowing to forward tracing items from one process to another one. This is the first step toward a new tracing infrastructure (please see #2847). The `trace-dispatcher` will use this library to forward `TraceObject`s to external acceptors (for example, `cardano-tracer`).

You can think of this library as a **_replacement_** for old plugins [trace-forwarder](https://github.com/input-output-hk/iohk-monitoring-framework/tree/master/plugins/backend-trace-forwarder) and [trace-acceptor](https://github.com/input-output-hk/iohk-monitoring-framework/tree/master/plugins/backend-trace-acceptor) from `iohk-monitoring-framework`.

Co-authored-by: Denis Shevchenko <denis.shevchenko@iohk.io>
iohk-bors bot added a commit that referenced this pull request Aug 12, 2021
2960: CAD-3243: trace-forward library. r=denisshevchenko a=denisshevchenko

This is `trace-forward` library: `typed-protocols`-based library allowing to forward tracing items from one process to another one. This is the first step toward a new tracing infrastructure (please see #2847). The `trace-dispatcher` will use this library to forward `TraceObject`s to external acceptors (for example, `cardano-tracer`).

You can think of this library as a **_replacement_** for old plugins [trace-forwarder](https://github.com/input-output-hk/iohk-monitoring-framework/tree/master/plugins/backend-trace-forwarder) and [trace-acceptor](https://github.com/input-output-hk/iohk-monitoring-framework/tree/master/plugins/backend-trace-acceptor) from `iohk-monitoring-framework`.

Co-authored-by: Denis Shevchenko <denis.shevchenko@iohk.io>
@denisshevchenko
Copy link
Contributor

Our second PR is open: #3073

@deepfire deepfire force-pushed the tracing-master branch 3 times, most recently from be0535f to e9bc8a3 Compare September 8, 2021 16:08
@denisshevchenko denisshevchenko force-pushed the tracing-master branch 2 times, most recently from 71ab86c to 66f24d5 Compare September 9, 2021 18:04
@deepfire deepfire force-pushed the tracing-master branch 3 times, most recently from 479b52d to 56b3592 Compare September 13, 2021 11:16
@denisshevchenko denisshevchenko force-pushed the tracing-master branch 3 times, most recently from 9be5e74 to a1c8c3d Compare September 22, 2021 11:22
@denisshevchenko denisshevchenko force-pushed the tracing-master branch 2 times, most recently from 117bccc to e400750 Compare October 5, 2021 19:16
@deepfire deepfire force-pushed the tracing-master branch 4 times, most recently from 52bb671 to 794ee86 Compare October 6, 2021 15:32
@denisshevchenko
Copy link
Contributor

The next PR: #3303

@denisshevchenko
Copy link
Contributor

The next PR: #3337

@deepfire deepfire force-pushed the tracing-master branch 2 times, most recently from 2f1f3b7 to cfc959e Compare November 25, 2021 14:34
@deepfire deepfire force-pushed the tracing-master branch 12 times, most recently from 7165997 to ae85ea5 Compare December 17, 2021 12:12
@denisshevchenko
Copy link
Contributor

The next PR, integration in the node: #3450

@denisshevchenko
Copy link
Contributor

The next PR: #3496

@denisshevchenko
Copy link
Contributor

The next PR: #3498

@deepfire
Copy link
Contributor Author

deepfire commented Jan 13, 2022

The tracing system cardano-node PR (#3450) was merged, so this no longer has purpose of serving as integration.

@deepfire deepfire closed this Jan 13, 2022
@deepfire deepfire deleted the tracing-master branch January 28, 2022 13:09
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.

4 participants