Uploaded image for project: 'Cassandra'
  1. Cassandra
  2. CASSANDRA-10392

Allow Cassandra to trace to custom tracing implementations

    XMLWordPrintableJSON

Details

    • Improvement
    • Status: Resolved
    • Normal
    • Resolution: Fixed
    • 3.4
    • None
    • None

    Description

      It can be possible to use an external tracing solution in Cassandra by abstracting out the writing of tracing to system_traces tables in the tracing package to separate implementation classes and leaving abstract classes in place that define the interface and behaviour otherwise of C* tracing.

      Then via a system property "cassandra.custom_tracing_class" the Tracing class implementation could be swapped out with something third party.

      An example of this is adding Zipkin tracing into Cassandra in the Summit presentation. Code for the implemented Zipkin plugin can be found at https://github.com/thelastpickle/cassandra-zipkin-tracing/

      In addition this patch passes the custom payload through into the tracing session allowing a third party tracing solution like Zipkin to do full-stack tracing from clients through and into Cassandra.

      Attachments

        1. 10392-trunk.txt
          34 kB
          Michael Semb Wever
        2. cassandra-dtest_master-10392.txt
          4 kB
          Michael Semb Wever

        Activity

          People

            mck Michael Semb Wever
            mck Michael Semb Wever
            Michael Semb Wever
            T Jake Luciani
            T Jake Luciani T Jake Luciani
            Votes:
            9 Vote for this issue
            Watchers:
            21 Start watching this issue

            Dates

              Created:
              Updated:
              Resolved: