1DS C++ SDK
Перейти к файлу
Miguel Angel Casillas Maldonado 306a8257be Merged PR 940316: KillSwitch tests
Added FunctTests to check KillSwitch feature:

- killSwitchWorks checks that a token is banned and events are dropped
- killIsTemporary checks that a token is banned for an amount of time and no events are dropped after that

Related work items: #1608758
2019-03-05 19:56:07 +00:00
Solutions Merged PR 938576: WorkerThread 2019-02-26 21:01:47 +00:00
bondlite Fix some missing override keywords. 2018-12-31 14:13:51 -08:00
docs Merged PR 935910: Kill switch feature, proper offline storage trim logic and tests 2019-02-26 00:00:36 +00:00
examples Mac OS X build env housekeeping (no functional changes) 2019-02-26 00:41:48 -08:00
googletest Merged PR 904184: Start building functional and unit tests for clang on Windows and Mac 2019-02-01 09:08:09 +00:00
lib Fixing build break on Linux gcc #2 2019-02-26 13:10:29 -08:00
linktest Aria SKU for ARM64 Desktop 2018-09-20 12:59:43 -07:00
sqlite Disable /permissive-, there's an inconsistent build behavior between the loop and local machines. 2019-01-04 10:58:17 -08:00
sqliteUWP Disable /permissive-, there's an inconsistent build behavior between the loop and local machines. 2019-01-04 10:58:17 -08:00
tests Merged PR 940316: KillSwitch tests 2019-03-05 19:56:07 +00:00
tools Mac OS X build env housekeeping (no functional changes) 2019-02-26 00:41:48 -08:00
wrappers/go Integrate Linux fixes 2018-04-12 15:57:01 -07:00
zlib Disable /permissive-, there's an inconsistent build behavior between the loop and local machines. 2019-01-04 10:58:17 -08:00
.gitattributes Pushing NewCPP to a new Master Branch, check out old repo for history 2017-05-10 10:29:11 -07:00
.gitignore Mac OS X build env housekeeping (no functional changes) 2019-02-26 00:41:48 -08:00
.gitmodules Merged PR 917219: Reduce stats volume and byte size 2019-02-07 19:58:56 +00:00
CHANGELOG.md Updated CHANGELOG.md to clean-up lists indents (no code changes) 2019-02-21 21:30:09 +00:00
CMakeLists.txt Merged PR 904184: Start building functional and unit tests for clang on Windows and Mac 2019-02-01 09:08:09 +00:00
CONTRIBUTING.md Updated CONTRIBUTING.md 2019-02-21 19:23:41 +00:00
LICENSE Update the documents for inner source readiness 2019-02-20 14:07:01 -08:00
README.md Updated README.md 2019-02-20 22:14:23 +00:00
RunOACR.bat Drafts for v3 2018-03-30 17:05:05 -07:00
aria-sdk.spec.in Add RHEL and CentOS 7 support 2018-09-06 18:07:01 -04:00
azure-pipelines.yml Merged PR 935910: Kill switch feature, proper offline storage trim logic and tests 2019-02-26 00:00:36 +00:00
build-Win32Debug.bat Add .\Tests prefix to command line builds 2018-09-04 10:38:35 -07:00
build-Win32Release.bat Fix building unit and functional tests from command line 2018-09-04 10:24:51 -07:00
build-all.bat Enable ARM64 build in build-all.bat 2018-09-20 14:25:37 -07:00
build-clang.sh Merged PR 817004: Mac OS X clang compiler support 2018-11-07 06:39:27 +00:00
build-cmake-clang.cmd Merged PR 904184: Start building functional and unit tests for clang on Windows and Mac 2019-02-01 09:08:09 +00:00
build-gtest.sh Mac OS X build env housekeeping (no functional changes) 2019-02-26 00:41:48 -08:00
build-rhel.sh Add RHEL and CentOS 7 support 2018-09-06 18:07:01 -04:00
build-x64Debug.bat Add .\Tests prefix to command line builds 2018-09-04 10:38:35 -07:00
build-x64Release.bat Add .\Tests prefix to command line builds 2018-09-04 10:38:35 -07:00
build.properties Pushing NewCPP to a new Master Branch, check out old repo for history 2017-05-10 10:29:11 -07:00
build.sh Mac OS X build env housekeeping (no functional changes) 2019-02-26 00:41:48 -08:00
codeflow.bat Drafts for v3 2018-03-30 17:05:05 -07:00
install.sh Merged PR 817004: Mac OS X clang compiler support 2018-11-07 06:39:27 +00:00
ivy.xml Pushing NewCPP to a new Master Branch, check out old repo for history 2017-05-10 10:29:11 -07:00
owners.txt Update the documents for inner source readiness 2019-02-20 14:07:01 -08:00
test-all.cmd Merged PR 799323: Stats improvements, tests + fixes for recent OTEL issues discovered in dogfood 2018-10-16 05:01:28 +00:00
uncrustify.cfg Pushing NewCPP to a new Master Branch, check out old repo for history 2017-05-10 10:29:11 -07:00
uncrustify.ignore Added out to ignore 2017-05-10 15:37:34 -07:00

README.md

ArtifactType Documentation Language Platform Stackoverflow Tags ms.reviewedAt ms.reviewedBy
nupkg, zip https://1dsdocs.azurewebsites.net C, C++, C++11, GoLang Windows, UWP, Mac OS X, Linux N/A 1DS,telemetry,C,C++,data ingestion,events 02/20/2019 maxgolov

Microsoft Applications Telemetry C/C++ SDK

Microsoft Applications Telemetry C/C++ SDK enables cross-platform telemetry collection from various Microsoft products. It enables data / telemetry upload to 1DS Collector++.

Data/Telemetry

This project collects usage data and sends it to Microsoft to help improve our products and services. Read our privacy statement to learn more.

What is 1DS and Collector++?

One Data Strategy (1DS) is a cross-org initiative with five teams across the company coming together to unify multiple telemetry efforts at Microsoft. This includes the teams that built Asimov, Aria, Shared Data Platform, Geneva, OMS, App Insights, and Visual Studio App Center. We aim to create a unified data production, collection, and set of tools for key scenarios for the entire company. Collector++ is the externally-facing destination end-point where data/telemetry is uploaded to that subsequently routes the data to Microsoft internal data pipeline.

 We need a data culture where every engineer, every day, is looking at the usage data, learning from that usage data,
 questioning what new things to test out with our products, and being on that improvement cycle which is the lifeblood
 of Microsoft...
         -- Satya Nadella

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] (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 opencode@microsoft.com with any additional questions or comments.

Please read our CONTRIBUTING.md which outlines all of our policies, procedures, and requirements for contributing to this project.

Getting Started

Please follow instructions published at our Team SharePoint site These instructions will get you a copy of the project up and running on your local machine for development and testing purposes.

Running the tests

There are two sets of tests available:

  • 'tests/functests' - functional tests that verify customer-facing APIs and Features
  • 'tests/unittests' - internal unit tests that verify operation of each individual component

These tests use Google Test / Google Mock framework and get built alongside with SDK. Launch 'functests' and 'unittests' binary executables to capture the test results.

End-to-end tests

'functests' include several E2E tests that verify the flow of data to Collector++.

Unit tests

'unittests' cover various internal component tests, such as LogManager, ILogger, HTTP uploader, IStorage, etc.

Deployment

SDK is integrated as a static or dynamic library runing in-proc within your executable on Windows, Linux and Mac.

Built With

Please follow Getting started instructions to learn how to build.

We support building SDK on:

  • Windows with Visual Studio 2017
  • Windows with cmake + llvm-clang compiler
  • Linux with gcc
  • Mac OS X with cmake and XCode standard clang compiler

Contributing

Please read our CONTRIBUTING.md which outlines all of our policies, procedures, and requirements for contributing to this project.

Versioning and changelog

We use SemVer for versioning.

For the versions available, see the tags on this repository.

Authors

Project authors and contributors:

Please refer to owners.txt file.

License

This project has adopted the internal open source model. (c) Microsoft - All Rights Reserved. We are currently working on contributing this project to open source under MIT license by April 2019. Please DO NOT SHARE THIS PROJECT SOURCE CODE EXTERNALLY until we satisfy all the legal requirements.

Please see the LICENSE file for details.

Acknowledgments

We appreciate our long-term strategic partnership with Microsoft Office, Microsoft OneDrive, Microsoft Edge (Anaheim), Microsoft Information Protection SDK, Cortana, Speech Services SDK, OneNote and many other of our customers.