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

Integrating data tracing in e2e tests #3318

Closed
staheri14 opened this issue Apr 15, 2024 · 1 comment · Fixed by #3514
Closed

Integrating data tracing in e2e tests #3318

staheri14 opened this issue Apr 15, 2024 · 1 comment · Fixed by #3514
Assignees
Labels
WS: Big Blonks 🔭 Improving consensus critical gossiping protocols

Comments

@staheri14
Copy link
Contributor

Problem

The inclusion of tracing data is essential for the testground sanity test, primarily for precise bandwidth utilization comparisons. Currently, our e2e tests do not incorporate this feature.

Acceptance Criteria

This issue aims to implement the required modifications to the e2e tests, enabling them to trace and either download data from the Knuu instances or upload it to an external server.

@staheri14 staheri14 self-assigned this Apr 15, 2024
@staheri14 staheri14 added WS: Big Blonks 🔭 Improving consensus critical gossiping protocols and removed needs:triage labels Apr 15, 2024
staheri14 added a commit that referenced this issue Apr 16, 2024
mergify bot pushed a commit that referenced this issue Apr 16, 2024
The port `:26661` needs to be exposed in order to access traced data.
Please see
https://github.com/celestiaorg/celestia-core/tree/main/pkg/trace#pull-based-event-collection.
Part of #3318

(cherry picked from commit b2566e2)

# Conflicts:
#	Dockerfile
ninabarbakadze pushed a commit to ninabarbakadze/celestia-app that referenced this issue Apr 17, 2024
rootulp added a commit that referenced this issue Apr 17, 2024
…#3334) (#3335)

The port `:26661` needs to be exposed in order to access traced data.
Please see
https://github.com/celestiaorg/celestia-core/tree/main/pkg/trace#pull-based-event-collection.
Part of #3318<hr>This is an automatic backport of pull request #3334
done by [Mergify](https://mergify.com).

---------

Co-authored-by: Sanaz Taheri <[email protected]>
Co-authored-by: sanaz <[email protected]>
Co-authored-by: Rootul P <[email protected]>
@evan-forbes
Copy link
Member

to update this, we are just waiting to merge some existing work that integrates the tracing data. PR incoming

staheri14 added a commit that referenced this issue Jun 4, 2024
Closes #3318
It enables 1) local tracing in validators knuu instances 2) pushing
locally traced data from validators to a S3 bucket, given that proper
configs are passed via environment vars.

Additionally, it includes changes that:
- Allow specifying the number of blobs per sequence parameter for TX
clients (previously fixed at `5`).
- Log information about the presence of Grafana environment variables.


## How to run
The `E2EThroughput` has been tested and I confirm both local tracing and
pushing traces work correctly in knuu instances. To run the test:
```
go run ./test/e2e/benchmark  -v
```
You will see the `consensus_round_state.jsonl` file added to the root
directory of the project, indicating the local tracing is operational in
the validators' knuu instances.

In order to push traces to a S3 bucket, you would need to pass S3 bucket
push configs as env variables. I also tested this feature, and it works
fine. It downloads the traced data and places them under `./traces/`
folder in the project root.
0xchainlover pushed a commit to celestia-org/celestia-app that referenced this issue Aug 1, 2024
Closes celestiaorg/celestia-app#3318
It enables 1) local tracing in validators knuu instances 2) pushing
locally traced data from validators to a S3 bucket, given that proper
configs are passed via environment vars.

Additionally, it includes changes that:
- Allow specifying the number of blobs per sequence parameter for TX
clients (previously fixed at `5`).
- Log information about the presence of Grafana environment variables.


## How to run
The `E2EThroughput` has been tested and I confirm both local tracing and
pushing traces work correctly in knuu instances. To run the test:
```
go run ./test/e2e/benchmark  -v
```
You will see the `consensus_round_state.jsonl` file added to the root
directory of the project, indicating the local tracing is operational in
the validators' knuu instances.

In order to push traces to a S3 bucket, you would need to pass S3 bucket
push configs as env variables. I also tested this feature, and it works
fine. It downloads the traced data and places them under `./traces/`
folder in the project root.
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
WS: Big Blonks 🔭 Improving consensus critical gossiping protocols
Projects
None yet
2 participants