Граф коммитов

39 Коммитов

Автор SHA1 Сообщение Дата
Alex Gavrishev a17fbc69ca Azure monitor: Add GZIP header option to HttpDeflateCompression (#603) 2020-09-02 21:31:18 +03:00
Max Golovanov ee2dd70363 OSS clean-up:
- rename ARIA SDK to MAT / 1DS
- add MIT license to public headers
2020-08-13 22:30:45 -07:00
Jason Bray c491350039 Fix APITest.LogManager_Initialize_DebugEventListener flakiness and transition db size check time to config value 2020-07-21 21:29:16 -07:00
larvacea a474dfbbaf Implement ILogConfiguration in Java wrappers. 2020-07-02 09:30:29 -07:00
Amit Enoch 54b0738d9f Set drop if storage full to false by default.
Added doc
2020-01-20 09:53:39 +02:00
Max Golovanov 99ce08eb3a Implementation of MS-Root check for WinInet HTTP client 2019-12-04 15:38:56 -08:00
Trevor Lacey ce624cce52 Custom WorkerThread (#68)
* Initial change + http tests

* Plumb worker thread instance

* Fix whitespace

* Fix mac/linux

* Add unit tests

* C API should follow "worker thread" naming

* Address nit comments

* Fix UT build

* Move http client and worker thread to IModule

* Rename to task dispatcher

* shared_ptr IModules

* Address nit CR feedback

* Fix UtcTelemetrySystem initialization

* Update submodule
2019-09-09 12:57:20 -07:00
Trevor Lacey f18cc12947 Fix default configuration for PAL initialization (#55) 2019-08-08 08:50:25 -07:00
Trevor Lacey ea6de9abb3 Conditionally disable network detector at runtime (#50)
* Conditionally disable network detector at runtime

* Pass full configuration struct to PAL

* Add trace override options

* Check for empty ILogConfiguration entry for string
2019-08-06 15:41:32 -07:00
Max Golovanov 9081d58def Merge branch 'onesdk' of https://msasg.visualstudio.com/DefaultCollection/Shared%20Data/_git/Aria.SDK.Cpp into maxgolov/msasg_to_github 2019-06-25 11:38:11 -07:00
Miguel Casillas f1446e8b2e Merged PR 1088590: Removed AllowLargeEvents from API surface
Delete AllowLargeEvents from Logger API surface
Expose bool flags on LogConfiguration
- CFG_BOOL_UTC_ENABLED -> UTC mode is enabled on SDK
- CFG_BOOL_UTC_ACTIVE -> SDK is running on UTC mode
- CFG_BOOL_UTC_LARGE_PAYLOADS -> UTC allows large payloads on windows version

Related work items: #1782870
2019-06-20 21:07:22 +00:00
Max Golovanov 2180266693 Microsoft Applications Telemetry SDK for C/C++ - v3.2 (April 2019) 2019-04-02 15:03:34 -07:00
Max Golovanov f55114d690 Revert to old namespace to reduce the amount of diff. Add two scripts to automagically rename the namespace (it'd be run after code review is done). 2019-03-29 13:10:13 -07:00
Max Golovanov b9bd9b5119 Merge branch 'onesdk' of https://msasg.visualstudio.com/DefaultCollection/Shared%20Data/_git/Aria.SDK.Cpp into maxgolov/onesdk/1035555_github_cleanup 2019-03-29 11:57:27 -07:00
Max Golovanov 3ef0bd8ca1 GitHub clean-up drafts 2019-03-28 16:40:31 -07:00
Ayotunde Odejayi f0b5d0b3bd Merged PR 977282: Aria SDK changes for DDV Support [Preview]
This PR previews the following change to the Aria SDK:
- Enable a Producer control its own opt-in.
Events fired under the Microsoft Partners Telemetry group (MSPG) are not bound to OS opt-in policies. By permitting the Producer to set its provider group Id, a producer may set its provider group Id to that of MSPG (which UTC maps to a corresponding provider group) and hence control its opt-in.

- Additionally, the addition of new DDV metadata fields on a per-event basis are demonstrated in the sample app included. Discussions on how best to do this are welcome.

Related work items: #1699002
2019-03-28 19:34:25 +00:00
Max Golovanov 1ad6a0233d Merged PR 974444: Keep reference to ILogConfiguration rather than doing deep-copy.
* Keep reference to ILogConfiguration rather than doing deep-copy.
* If stats timer has already scheduled, re-check the timer again when it's the time to send.
* Adjust the tests to account for the fact that RuntimeConfig object now requires a ref to ILogConfiguration.
* Remove dynamic_cast
* Re-enable stats acquiring common Part A props (device id,etc.) but not the custom Part C contexts
* Make sure the ILogger detached from parent LogManager context can still acquire common Part A props

Related work items: #1696789
2019-03-22 18:30:48 +00:00
Max Golovanov bfc3bc45ec Merged PR 883086: Lightweight SDK for embedding in installer packages
Reducing / disabling non-essential features and setting various build flags to optimize for small size.
x5 times size reduction.

Functional changes to common core SDK:
* Had to rename IStorage to IDataStorage, as IStorage is a macro defined in Windows SDK.
* Had to refactor user analytics feature storage (SDK UUID / install id) to utilize plain text file rather than FIFO ..
FIFO storage is a legacy structure, bloatware, had to be deprecated and removed going forward anyways.
It wasn't even present in v1 Aria SDK, but somehow slipped thru into v3..

Features excluded from lightweight SDK:
* JSON
* ZLIB
* ECS client
* SQLite DB (only ram queue, no offline storage)
* Transmit Profiles

Related work items: #1550785
2019-03-08 05:24:15 +00:00
Max Golovanov 55b95fb067 Merged PR 917219: Reduce stats volume and byte size
Stats improvement:
* reduce priority from Critical/Realtime to normal
* reduce frequency to 1 event in 30 minutes
* reduce stats event size. Stop collecting histograms we never ever look at (and in fact block in our Kusto storage)
* rework the code to make it simple, avoid "copypasta" that previously plagued MetaStats.cpp
* use wall clock for stats event timestamp
* adjust tests to account for lesser number of stats event per session
* make per-tenant stats a configurable "debug only" feature, as it does not scale well for deployment in Office
* adjust PAL to properly return monotonic clock

Related work items: #1618463
2019-02-07 19:58:56 +00:00
Max Golovanov fff773d6b1 Merged PR 817004: Mac OS X clang compiler support
What's done:
* Cleaned-up all clang compiler warnings during library build
* PAL Device ID GUID
* PAL appId

Further TODO:
* BVT for Mac
* Verify all header-only APIs for warnings
* Guidance on custom HTTP provider - Edge team should handle this
* Possibly use our own sqlite3 instead of OS, as very old OS X dyn sqlite3 might be too old

Related work items: #1470816
2018-11-07 06:39:27 +00:00
Max Golovanov eb551cbf57 Merged PR 799323: Stats improvements, tests + fixes for recent OTEL issues discovered in dogfood
Fixes:
* implement HTTP stack passing of request body to callback for DDV tool
* add Microsoft googletest nupkg to enable visualization of test results in Visual Studio
* fix stats and stats session IDs
* MS Edge: fix telemetry not working if RO context is already inited
* Fix SetType API not working that breaks ODIN annotation processor
* BVT test fixes

Related work items: #1403111, #1403119, #1459042
2018-10-16 05:01:28 +00:00
Max Golovanov 993241d4fe Add back-off config to TPM 2018-08-31 18:16:24 -07:00
Max Golovanov 47b0381702 - proper handling of offline storage path passed down via configuration
- implementation of Flush method - to move records from in-ram sqlite to on-disk sqlite db
- ability to forward debug callbacks to outside shim (needed for templated LogManager impl). No API changes, but internal impl!
- DebugSource.cpp : forward events to outside shim located at LogManager impl templated surface
- RuntimeConfig_Default.hpp : no longer need to set the path here, as it's done in LogManagerImpl
- ESCConfigCache.cpp : format changes and moved GetAppLocalTempDirectory to MAT as common cross-plat routine
- HttpResponseDecoder.cpp : temporary debug-only change to catch references to deallocated ptrs and assert on that
- IOfflineStorage.hpp : add Flush method (move ram to disk) and a callback for records saved to disk
- DebugEvents.hpp : proxy-forward callbacks to another "cascaded" listener
- ILogManager.hpp : AttachEventSource / DetachEventSource - attach "cascaded" proxy source (as there could be many templ ref to one instance)
- LogManagerBase.hpp : save primary tenant token back to configuration and attach "local" Debug event source proxy on a template
- NullObjects.hpp : add stubs to NULL-object pattern implementation
- Variant.hpp / VariantType.hpp : add draft implementation of thread-safe variants and fix vs201x memory corruption in destructor
- ISqlite3Proxy.hpp : expose v3 close method
- OfflineStorage_SQLite.cpp : move lock to outside of m_db check (race condition fix)
- OfflineStorageHandler.cpp : implementation of async flush copy from ram to disk + callback for records saved to disk
- Move local temp dir detection from UTC helpers to common MAT code
- Statistics.cpp : fix stats record decoration
- TelemetrySystem.cpp : reenable stats and move storage stop after telemetry system stop (otherwise there is a race condition)
- TPM : proper atomic check for uploads scheduled
- Added couple common utils from v1 codebase
2018-05-14 10:32:05 -07:00
Max Golovanov e8ca6130ef Downgrade several FIXMEs to TODO and fix the rest. Plus fix for the common properties population. 2018-04-09 15:42:59 -07:00
Max Golovanov 04b3db4135 2nd round of Unit and Functional test fixes after refactor; plus add mocks for System 2018-04-06 18:17:59 -07:00
Max Golovanov 4c1b4a8d54 Fixes and Sample for Host-Guest functionality:
* one main Host - mapped to legacy LogManager singleton
* two Guest modules - ModuleA and ModuleB
2018-04-02 17:15:45 -07:00
Max Golovanov d46f98350c Drafts for v3 2018-03-30 17:05:05 -07:00
sanjayga 5db2014f72 moved Linux sdk code to one sdk branch 2018-02-06 19:33:43 -08:00
sanjayga 022572cb47 Changes names to Events SDK 2017-12-14 14:02:04 -08:00
sanjayga f5a8918c77 Host Guest API changes 2017-12-01 16:01:34 -08:00
sanjayga a59d3fb044 Changed Priority to Latency and Persistence 2017-11-02 14:56:09 -07:00
sanjayga 6299a30f3d Updated one sdk with latest schema on 10/12/2017 2017-10-12 15:58:28 -07:00
sanjayga fd4f96fe71 one sdk work 2017-09-12 21:13:42 -07:00
sanjayga c1da20d97d Binary compact 2017-09-12 15:20:51 -07:00
sanjayga bd162b75f1 Few perf changes
removed unused exports
 fixed logLevels
added logConfiguration features  from V 1.7
2017-08-14 09:39:01 -07:00
sanjayga a0027758a2 Optimize SqliteDB
Changed timer for all 3 priorities
Performance improvements
2017-06-14 16:27:51 -07:00
sanjayga 3f8703245d Updated Includes to be flat 2017-06-01 20:37:13 -07:00
sanjayga ff2b04b6b1 Utc changes 2017-05-25 16:27:01 -07:00
Marius Robert Ionescu ba8fc30023 Pushing NewCPP to a new Master Branch, check out old repo for history 2017-05-10 10:29:11 -07:00