You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
This repository was archived by the owner on Mar 4, 2025. It is now read-only.
* Upstream sync 5f27ac2f26cd5d5069179a958ee60cddc1faecba..a5267be6402a22f7404acb9d88b7ad3aef059094
* Configuration Poller Implementation
* Probes Configuration Updater & Comparer
Probes Configuration Updater & Comparer implementation
* Implemented the method probe instrumentation
* Implemented the method probe instrumentation
* Snapshot creator and object serialization for probes
Adding snapshot creator and WIP on snapshot uploader
Co-authored-by: Omer Raviv <[email protected]>
Co-authored-by: Alexander S. <[email protected]>
* Simplified the DebuggerTokens according to the refactoring of the CallTargetTokens
Simplified the DebuggerTokens according to the refactoring of the CallTargetTokens
* Discovery Service
discovery service
* Probe configuration fixes
Probe configuration fixes + unit tests
* Implemented the instrument-all mode for the Debugger
* Added the Instrument All capability where we the Debugger instrumentation is being applied to every jit-compiled method (except predefined known set).
* Added an environment variable named `DD_INTERNAL_DEBUGGER_INSTRUMENT_ALL` to control the instrumentation all mode.
* Dropped non-ByRef support usages.
* Fixed the signature of `LogException` - it is now accepting `DebuggerState`.
* Added the ability to grab additional information about instrumented method during execution
* Fix Configuration Poller in RCM mode
* Add method probes snapshots tests
* Fixed instrumentation info lookup for generic methods and methods in generic types
* Fixed `InstrumentedMethodInfo` lookup for generic methods & methods (either generic/non-generic) in generic types.
* Fixed issues we had in `SmokeTests`.
* Added new smoke tests that covers the generics fixes.
* Snapshot uploading
* Implement Snapshot Uploader
* Read local variable names from pdb and use them in snapshots
* Add support for resolving Line Probe locations by reading sequence points from PDB
* Support static methods (and extracting static fields) in Snapshot Probes
* Fix json scheme for capture instance object
* support static method in probe snapshot
* Fix Snapshot uploading
* Add snapshot summary
* Add snapshot summary
Co-authored-by: Matan Green <[email protected]>
Co-authored-by: Omer Raviv <[email protected]>
Co-authored-by: Omer Raviv <[email protected]>
* Implementation of Batch Uploading
* Add tests to check if nothing happens when debugger disabled
* implement live debugger tests
* Implemented the Line Probe Instrumentation
* Implemented the line probe instrumentation + allowing multiple line probes together with method probe to be set on the same method.
* Keeping track of methods under instrumentation and updating them accordingly as new line probe / method probe requests arrive.
* Activated reverts (aka undoing the instrumentation) for both Method Probes and Line Probes.
* Passing ProbeId in Method Probes and Line Probes.
* Got rid of assembly name in method probe requests.
* Fixed issues in the structuring of the snapshots to adhere the correct format.
* Extended the testing infrastructure to support multi*phase (`ProbeAttributeBase.Phase`) and customized (`ProbeAttributeBase.Unlisted`) tests to cover instrumentation of line probes and method probes with reverts.
* Added several tests that utilize the new phasing mechanism that covers line probe together with method probe instrumentations.
* Rebase Fixes
* Allowing simple type names in method probes
Allow simple type names in method probe requests.
E.g `FooClass` instead of `The.Full.Name.Of.FooClass`.
* Fix method probe snapshot without arguments
* Remove Thread Sleep from integration tests
* remove thread sleeps
* Added support for overloads instrumentation in Method Probe
* Added support for instrumenting overloads by providing a method probe without a signature.
* Restore Live Debugger unit tests
* restore live debugger tests
* Reporting Probes Statuses
Implemented the Probes Statuses. The following Probe Statuses are now emitted correctly: `Received`, `Active`, `Error`.
- `Received`: The Agent received the probe but has not requested ReJIT yet (because the module is not loaded).
- `Active`: _(*) At least_ `RequestReJIT` has been requested.
- `Error`: Tried to apply the instrumentation on a method, but the instrumentation has failed for any reason (not supported types, failure to load metadata, etc...).
* Adapt to change made in RCM request schema ('tracer_client' -> 'client_tracer')
* Finalize Live Debugger codebase for public repo and address all .NET Team feedback
* [Profiler] Fix Arm64 installer smoke tests (#3002)
* Fix Amr64 installer smoke tests
Profiler was not loaded because Arm64 is not currently supported.
But the CodeHotspot feature was activated because it relies only on the
env var DD_PROFILING_ENABLED
* Check OS in addition to the architecture
* Do not add x-datadog-tags header when vlaue is max header length is set to 0 (#3001)
* [Test Package Versions Bump] Updating package versions (#2972)
* [Test Package Versions Bump]
* Exclude GraphQL 5.0 and 5.1.0 from testing
There's no compatible combination of packages that works with our sample because GraphQL.Server.All requires minimum of 5.1.1.
* Exclude 3.29.0+ from cosmosdb tests on <netcoreapp3.1
Because .NET Standard is a lie - https://andrewlock.net/stop-lying-about-netstandard-2-support/
* Update package versions
Co-authored-by: dependabot[bot] <dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Lock <[email protected]>
* Update vendored version of Newtonsoft.Json (#2980)
* Add support for specifying files that should be dropped entirely from the vendored code
We need this with Newtonsoft.Json because they define some attributes which we already declare internally
* Allow specifying multiple transforms for transforming a content file
* Update vendor definition for Newtonsoft.Json
Added `#nullable enable` to source as now built with Nullable reference types.
Also ignored all warnings related to incorrect annotations - these are primarily coming from the annotated base class libraries in .NET Core I think
* Add horrible hacks
- JsonSerializerInternalReader explicitly enables and disables some nullability warnings, which ends up conflicting with the global ignores we add.
- Some targets were removed in the update, which means we now potentially hit other branches it seems. Working around it by patching the #if
- TryGetValue is defined in netcoreapp2.1+. As newtonsoft doesn't target that, they don't have this conflict that we have to work around. Looks like this was manually worked around before, but I'm not sure the previous approach was actually correct.
* Update vendored source
* Update CoverageCollector to support new nullability in Newtonsoft.Json
* Add new HAVE_REGEX_TIMEOUTS constant to constants defined in Datadog.Trace
* Remove spurious $(AdditionalConstants)
* [Profiler] Minor cleanup (#2977)
* Ignore process_id in snapshots on Linux (#3003)
When running in Docker, the pid of the main process is always 1.0, however, when we use `dd-trace` to instrument an app, the pid is sometimes _not_ 1.0.
I'm not entirely sure why it's _sometimes_ 1.0, and sometimes not, but I would _guess_ that it's some sort of race. Either way, I think it's safe to ignore it in the snapshots.
* Support Windows long paths
* Fix tests
* fix snk name
* update configuration keys, values and doc
Co-authored-by: Alexander S <[email protected]>
Co-authored-by: Matan Green <[email protected]>
Co-authored-by: Dudi Keleti <[email protected]>
Co-authored-by: Omer Raviv <[email protected]>
Co-authored-by: Omer Raviv <[email protected]>
Co-authored-by: Matan Green <[email protected]>
Co-authored-by: Alexander S <[email protected]>
Co-authored-by: Gregory LEOCADIE <[email protected]>
Co-authored-by: Pierre Bonet <[email protected]>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: dependabot[bot] <dependabot[bot]@users.noreply.github.com>
Co-authored-by: Andrew Lock <[email protected]>
Co-authored-by: Kevin Gosse <[email protected]>
Co-authored-by: Piotr Kiełkowicz <[email protected]>
Copy file name to clipboardexpand all lines: docs/internal/internal-config.md
+10
Original file line number
Diff line number
Diff line change
@@ -72,6 +72,16 @@ These settings should be never used by the users.
72
72
|`SIGNALFX_LOG_LEVEL`| Sets the log level for serverless. ||
73
73
|`_SIGNALFX_EXTENSION_PATH`| Sets the lambda extension path. ||
74
74
|`SIGNALFX_TRACE_X_DATADOG_TAGS_MAX_LENGTH`| Configuration key for the maximum length of an outgoing propagation header's value ("x-datadog-tags") |`512`|
75
+
|`SIGNALFX_DEBUGGER_POLL_INTERVAL`| Sets the debugger poll interval (in seconds). |`1`|
76
+
|`SIGNALFX_DEBUGGER_SNAPSHOT_URL`| Sets the URL used to query our backend directly for the list of active probes. This can only be used if SIGNALFX_API_KEY is also available. ||
77
+
|`SIGNALFX_DEBUGGER_PROBE_FILE`| Sets the probe configuration file full path. Loads the probe configuration from a local file on disk. Useful for local development and testing. ||
78
+
|`SIGNALFX_DEBUGGER_ENABLED`| Enabling or disabling the Live Debugger |`false`|
79
+
|`SIGNALFX_DEBUGGER_MAX_DEPTH_TO_SERIALIZE`| Sets the max object depth to serialize for probe snapshots. |`1`|
80
+
|`SIGNALFX_DEBUGGER_MAX_TIME_TO_SERIALIZE`| Sets the maximum duration (in milliseconds) to run serialization for probe snapshots. |`150`|
81
+
|`SIGNALFX_DEBUGGER_UPLOAD_BATCH_SIZE`| Sets the maximum upload batch size. |`100`|
82
+
|`SIGNALFX_DEBUGGER_DIAGNOSTICS_INTERVAL`| Sets the interval (in seconds) between sending probe statuses. |`3600`|
83
+
|`SIGNALFX_DEBUGGER_UPLOAD_FLUSH_INTERVAL`| Sets the interval (in milliseconds) between flushing statuses. |`0`|
84
+
|`SIGNALFX_INTERNAL_DEBUGGER_INSTRUMENT_ALL`| Determine whether to enter "instrument all" mode where the Debugger instrumentation is applied to every jit compiled method. Only useful for testing purposes. |`false`|
0 commit comments