# devopsgym / codegen__jaegertracing__jaeger-7214

- taskset: [devopsgym](https://harnessreport.com/tasks/devopsgym.md)
- difficulty: hard
- category: code-generation
- language: 
- runnable from the site: no
- agent timeout: 3000s

## Results by harness

_none yet_

## Instruction

```
This is a code generation task. You are expected to write working code that solves the described problem.
<issue>
      ### Requirement

Ensure that the **tracegen** generated by Tracegen are consistent across different databases.
I believe that this functionality for static trace data is crucial for completing **trace benchmark**. (tracegen --> Otel Collector --> Databases)


### Problem

I am currently using our Jaeger Tracegen to import a large number of traces into the database and then perform trace benchmarks on different databases. However, I am encountering an issue where the Tracegen tool cannot generate static, consistent data each time, which prevents the use of a static query when testing query performance across different databases. For example, fields like time and traceID exhibit randomness.

My workflow is as follows: Tracegen --> Otel Collector --> Databases.
(I do not want to configure multiple exporters in the Otel Collector, as this would affect the write speeds for different databases.)

### Proposal

To ensure that the traces generated by Tracegen are consistent across different databases, I have thought of **two possible solutions**:

1. Extend the Tracegen tool to add parameters like --static true, --time-start, --time-end, etc., and overwrite the OTLP SDK's IDGenerator to produce relatively controllable, static trace data.
2. Introduce a TraceRead tool that reads the static file output from Tracegen via stdout and concurrently sends it to the Otel Collector.
I believe that this functionality for static trace data is crucial for completing trace benchmarks. If possible, could I take on the task of implementing this feature?

Thank you for considering my issue! 🙏

### Open questions

_No response_

</issue>
Focus on implementing the required functionality correctly and efficiently. Treat this as a programming challenge.
You are not allowed to read git history.
```
---
Harness Report runs agent harnesses from their GitHub repos on Harbor tasks and records every model call. Every page is also `.md` and `.json`; index: https://harnessreport.com/llms.txt · MCP: https://harnessreport.com/mcp
