Skip to content

Conversation

@jeku46
Copy link
Contributor

@jeku46 jeku46 commented Jan 8, 2026

Description

This is a new workflow block which takes input from the bytetracker and stores a log of events. The events store the time an object (unique tracker id) was first seen, last seen, its tracker id, and class.

There are no dependencies for this change.

Type of change

Please delete options that are not relevant.

  • New feature (non-breaking change which adds functionality)
  • This change requires a documentation update

How has this change been tested, please provide a testcase or example of how you tested the change?

I created a simple workflow which sent the bytetracker output to the new block. I used the rfdetr model. Then, I logged to output of the event detection log block.

I tested these changes against three different videos

  1. A video of a dog where the dog is in frame for the first 20 seconds, leaves frame, then returns. I found that the first tracker id logged to the event log as expected. There were some flickering ids as it leaves which remained in the "pending" event log and were later flushed. When the dog returned, a new tracker id was seen for long enough which added an entry to the log.
  2. I tested a video of where 4 people are seen running in a frame. The 4 events appeared in the log as expected.
  3. I tested a video with 2 giraffes and 2 people from the zoo. All logs appeared as expected.

Any specific deployment considerations

For example, documentation changes, usability, usage/costs, secrets, etc.

Docs

  • Docs updated? What were the changes:
  • New block
  • Docs have been added to block code

Note

Adds an analytics block to maintain and expose a rolling log of tracked detection events.

  • New roboflow_core/detection_event_log@v1 block (analytics/detection_event_log/v1.py) tracks objects by tracker_id, recording first/last seen frame/timestamp and frame counts; logs events after frame_threshold; periodically removes stale events based on flush_interval and stale_frames
  • Outputs event_log (split into logged and pending), passthrough detections, and counts: total_logged, total_pending; declares engine compatibility >=1.3.0,<2.0.0
  • Registers DetectionEventLogBlockV1 in core_steps/loader.py so it’s available via load_blocks()

Written by Cursor Bugbot for commit 4c396ac. This will update automatically on new commits. Configure here.

@CLAassistant
Copy link

CLAassistant commented Jan 8, 2026

CLA assistant check
All committers have signed the CLA.

@grzegorz-roboflow
Copy link
Collaborator

bugbot run

@cursor
Copy link

cursor bot commented Jan 8, 2026

Skipping Bugbot: Bugbot is disabled for this repository

@grzegorz-roboflow
Copy link
Collaborator

bugbot run

@cursor
Copy link

cursor bot commented Jan 8, 2026

Skipping Bugbot: Bugbot is disabled for this repository

@balthazur
Copy link
Contributor

bugbot run

1 similar comment
@balthazur
Copy link
Contributor

bugbot run

@codeflash-ai
Copy link
Contributor

codeflash-ai bot commented Jan 8, 2026

⚡️ Codeflash found optimizations for this PR

📄 1,492% (14.92x) speedup for DetectionEventLogBlockV1._evict_oldest_video in inference/core/workflows/core_steps/analytics/detection_event_log/v1.py

⏱️ Runtime : 722 microseconds 45.3 microseconds (best of 108 runs)

A new Optimization Review has been created.

🔗 Review here

Static Badge

@jeku46 jeku46 force-pushed the event-log-block branch 2 times, most recently from 3fc3e21 to dd952f7 Compare January 8, 2026 21:43
@grzegorz-roboflow grzegorz-roboflow marked this pull request as ready for review January 8, 2026 21:46
@jeku46 jeku46 changed the title WIP: Testing out new block for logging events feature: Event Detection Log Block Jan 8, 2026
- New analytics block that tracks detection events over time
- Records when objects first appear, their class, and last seen time
- Configurable frame_threshold, flush_interval, and stale_frames
- Includes unit tests and integration tests

Co-Authored-By: Claude Opus 4.5 <[email protected]>
@jeku46 jeku46 merged commit bdc0d78 into main Jan 8, 2026
51 checks passed
@jeku46 jeku46 deleted the event-log-block branch January 8, 2026 23:25
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.

6 participants