Code Monkey home page Code Monkey logo

correlationvector-cpp's Introduction

Correlation Vector-Cpp

CorrelationVector-Cpp provides the C++ implementation of the CorrelationVector protocol for tracing and correlation of events through a distributed system.

Correlation Vector

Background

Correlation Vector (a.k.a. cV) is a format and protocol standard for tracing and correlation of events through a distributed system based on a light weight vector clock. The standard is widely used internally at Microsoft for first party applications and services and supported across multiple logging libraries and platforms (Services, Clients - Native, Managed, Js, iOS, Android etc). The standard powers a variety of different data processing needs ranging from distributed tracing & debugging to system and business intelligence, in various business organizations.

For more on the correlation vector specification and the scenarios it supports, please refer to the specification repo.

Contributing

This project welcomes contributions and suggestions. Most contributions require you to agree to a Contributor License Agreement (CLA) declaring that you have the right to, and actually do, grant us the rights to use your contribution. For details, visit https://cla.microsoft.com.

When you submit a pull request, a CLA-bot will automatically determine whether you need to provide a CLA and decorate the PR appropriately (e.g., label, comment). Simply follow the instructions provided by the bot. You will only need to do this once across all repos using our CLA.

This project has adopted the Microsoft Open Source Code of Conduct. For more information see the Code of Conduct FAQ or contact [email protected] with any additional questions or comments.

General feedback and discussions?

Please start a discussion on the Home repo issue tracker

correlationvector-cpp's People

Contributors

cirvine-msft avatar felixcheng458 avatar microsoftopensource avatar mohit1234 avatar msftgits avatar sathishcg avatar tomzg avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

correlationvector-cpp's Issues

Fix missing or wrong Clang/AppleClang/MSVC Compiler argument

For MSVC

It appears that CMAKE_CXX_FLAGS_DEBUG and CMAKE_CXX_FLAGS_RELEASE have received wrong parameters value as MSVC compiler option in wrong way

For Clang/AppleClang

it appears that on MacOS clang compiler is : AppleClang , and this one isn't checked.
Also, compiler option : -Wno-unused-command-line-argument is missing that cause linker error

Make a new release

Would it be possible to make a new release with the changes that were added after 1.0?
The library can't be consumed without those changes, and I'm interested in making a vcpkg port.

Port to Vcpkg causes issue for package name and <PackageName>-config.cmake

As it appears that VCPKG doesn't support '' in a package name, possible names are something without '' (like correlation-vector or CorrelationVector)

the using of find_package(...) is impossible as the generated -config.cmake is : correlation_vector-config.cmake (note the underscore)

possible fix : this one can be fix with a patch that use a standard name like : correlation-vector

Is this a x-plat consumable solution?

My team needs a x-plat implementation of correlation vector in C or C++.
Squinting at the CMake files, it doesn't seem like this code is meant to be consumed out-of-the-box.
Is this something we would be inetersted in making consumable via source and/or vcpkg for x-plat consumers?
Is there any roadmap for this planned?

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.