-
Notifications
You must be signed in to change notification settings - Fork 63
feat: Add individual task telemetry to dumper system #949
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
Conversation
kaxuna
commented
Aug 27, 2025
- Create TaskRunMetrics class for individual task timing and error tracking
- Enhance TasksRunner to capture start/end times and errors for each task
- Update MetadataDumper to pass telemetry processor to TasksRunner
- Create TaskRunMetrics class for individual task timing and error tracking - Enhance TasksRunner to capture start/end times and errors for each task - Add addTaskTelemetry method to TelemetryProcessor - Update MetadataDumper to pass telemetry processor to TasksRunner - Add comprehensive tests for new telemetry functionality - Maintain backward compatibility with existing telemetry system This enhancement provides granular visibility into individual task execution performance and error details, complementing the existing overall runtime metrics.
dumper/app/src/main/java/com/google/edwmigration/dumper/application/dumper/TasksRunner.java
Outdated
Show resolved
Hide resolved
dumper/app/src/main/java/com/google/edwmigration/dumper/application/dumper/TasksRunner.java
Outdated
Show resolved
Hide resolved
dumper/app/src/main/java/com/google/edwmigration/dumper/application/dumper/TasksRunner.java
Outdated
Show resolved
Hide resolved
|
|
||
| private void addTaskTelemetry( | ||
| String taskName, Instant startTime, Instant endTime, TaskState state) { | ||
| if (telemetryProcessor != null) { |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Let's add Precondition to constructor and remove this if.
dumper/app/src/main/java/com/google/edwmigration/dumper/application/dumper/TasksRunner.java
Outdated
Show resolved
Hide resolved
| */ | ||
| public class TaskRunMetrics implements TelemetryPayload { | ||
|
|
||
| @JsonProperty private String name; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
I thinks we need both, taskName and taskClass. Another option is to redesign somehow our hierarchy of connectors and tasks.
|
|
||
| @JsonProperty private String name; | ||
|
|
||
| @JsonProperty private EventType eventType = EventType.TASK_RUN_METRICS; |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
It should be on level above, before payload.
The logic on the service to parse event should be something like this:
EventType type = event.getType();
if (type is A) {
//payload is audi, do audi specific
} else if (type is B) {
//payload is bwm, do bwm specific
}