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

sdk/trace/exporters: add batch span processor exporter #153

Merged

Commits on Sep 19, 2019

  1. sdk/trace/exporters: add batch span processor exporter

    The exporters specification states that two built-in span processors should be
    implemented, the simple processor span and the batch processor span.
    
    This commit implements the later, it is mainly based on the opentelemetry/java
    one.
    
    The algorithm implements the following logic:
    - a condition variable is used to notify the worker thread in case the queue
    is half full, so that exporting can start before the queue gets full and spans
    are dropped.
    - export is called each schedule_delay_millis if there is a least one new span
    to export.
    - when the processor is shutdown all remaining spans are exported.
    mauriciovasquezbernal committed Sep 19, 2019
    Configuration menu
    Copy the full SHA
    35205ed View commit details
    Browse the repository at this point in the history

Commits on Sep 23, 2019

  1. address feedback 1

    - use // instead of /
    - set daemon=true
    - fix error message for max_batch_size
    - change schedule_delay_millis' type to float
    - make flush internal method
    mauriciovasquezbernal committed Sep 23, 2019
    Configuration menu
    Copy the full SHA
    ffe33fc View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    4784c15 View commit details
    Browse the repository at this point in the history
  3. Configuration menu
    Copy the full SHA
    3e69336 View commit details
    Browse the repository at this point in the history
  4. Configuration menu
    Copy the full SHA
    f4256b8 View commit details
    Browse the repository at this point in the history

Commits on Sep 24, 2019

  1. add a little bit of room to timeout test

    it doesn't work sometimes when using the exact same value of schedule_delay_millis,
    add some room
    mauriciovasquezbernal committed Sep 24, 2019
    Configuration menu
    Copy the full SHA
    7559ee4 View commit details
    Browse the repository at this point in the history

Commits on Sep 25, 2019

  1. handle feedback:

    - log when dropping spans
    - check if processor is already shutdown
    - avoid using RLock
    - prereserve span array
    - introduce variable to avoid sending notification storm
    mauriciovasquezbernal committed Sep 25, 2019
    Configuration menu
    Copy the full SHA
    75a32dd View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    cf023ed View commit details
    Browse the repository at this point in the history

Commits on Sep 27, 2019

  1. further changes:

    - export returns nothing
    - added another test that sends more than max_queue_size elements
    - removed notified extra variable
    - move preallocated list to class
    mauriciovasquezbernal committed Sep 27, 2019
    Configuration menu
    Copy the full SHA
    5366af1 View commit details
    Browse the repository at this point in the history
  2. Configuration menu
    Copy the full SHA
    0346b19 View commit details
    Browse the repository at this point in the history
  3. make lint happy

    mauriciovasquezbernal committed Sep 27, 2019
    Configuration menu
    Copy the full SHA
    66c5191 View commit details
    Browse the repository at this point in the history