Skip to content

Commit

Permalink
Elasticsearch integration (#163)
Browse files Browse the repository at this point in the history
* add support for instrumenting generic methods

* fix redis test

* add elasticsearch example

* make QUIT command optional

* wip

* wip

* remove dead file, fix version

* refactor cancellation token code

* add more methods

* add tests

* async tests
  • Loading branch information
dd-caleb committed Oct 9, 2018
1 parent f49751e commit d6574b3
Show file tree
Hide file tree
Showing 9 changed files with 956 additions and 1 deletion.
19 changes: 19 additions & 0 deletions Datadog.Trace.sln
Original file line number Diff line number Diff line change
Expand Up @@ -107,6 +107,7 @@ Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Datadog.Trace.ClrProfiler.I
{BC7B3216-9C37-4570-8A4A-5D716AB98E9C} = {BC7B3216-9C37-4570-8A4A-5D716AB98E9C}
{C0C8D381-D6B9-4C76-9428-F40F2FA93A9A} = {C0C8D381-D6B9-4C76-9428-F40F2FA93A9A}
{086FF8A0-9CEE-470A-9751-78B0F1340649} = {086FF8A0-9CEE-470A-9751-78B0F1340649}
{C98950B1-DC4B-43DA-974F-EF2CF325EC2B} = {C98950B1-DC4B-43DA-974F-EF2CF325EC2B}
{F5B27CC4-1DF6-4ECD-A4FD-8200152F9A5A} = {F5B27CC4-1DF6-4ECD-A4FD-8200152F9A5A}
EndProjectSection
EndProject
Expand All @@ -123,6 +124,11 @@ Project("{2150E333-8FDC-42A3-9474-1A3956D46DE8}") = "scripts", "scripts", "{40A4
scripts\install-vcpkgs.ps1 = scripts\install-vcpkgs.ps1
EndProjectSection
EndProject
Project("{9A19103F-16F7-4668-BE54-9A1E7A4F7556}") = "Samples.Elasticsearch", "samples\Samples.Elasticsearch\Samples.Elasticsearch.csproj", "{C98950B1-DC4B-43DA-974F-EF2CF325EC2B}"
ProjectSection(ProjectDependencies) = postProject
{85F35AAF-D102-4960-8B41-3BD9CBD0E77F} = {85F35AAF-D102-4960-8B41-3BD9CBD0E77F}
EndProjectSection
EndProject
Global
GlobalSection(SolutionConfigurationPlatforms) = preSolution
Debug|Any CPU = Debug|Any CPU
Expand Down Expand Up @@ -385,6 +391,18 @@ Global
{F5B27CC4-1DF6-4ECD-A4FD-8200152F9A5A}.Release|x64.Build.0 = Release|x64
{F5B27CC4-1DF6-4ECD-A4FD-8200152F9A5A}.Release|x86.ActiveCfg = Release|x86
{F5B27CC4-1DF6-4ECD-A4FD-8200152F9A5A}.Release|x86.Build.0 = Release|x86
{C98950B1-DC4B-43DA-974F-EF2CF325EC2B}.Debug|Any CPU.ActiveCfg = Debug|Any CPU
{C98950B1-DC4B-43DA-974F-EF2CF325EC2B}.Debug|Any CPU.Build.0 = Debug|Any CPU
{C98950B1-DC4B-43DA-974F-EF2CF325EC2B}.Debug|x64.ActiveCfg = Debug|x64
{C98950B1-DC4B-43DA-974F-EF2CF325EC2B}.Debug|x64.Build.0 = Debug|x64
{C98950B1-DC4B-43DA-974F-EF2CF325EC2B}.Debug|x86.ActiveCfg = Debug|x86
{C98950B1-DC4B-43DA-974F-EF2CF325EC2B}.Debug|x86.Build.0 = Debug|x86
{C98950B1-DC4B-43DA-974F-EF2CF325EC2B}.Release|Any CPU.ActiveCfg = Release|Any CPU
{C98950B1-DC4B-43DA-974F-EF2CF325EC2B}.Release|Any CPU.Build.0 = Release|Any CPU
{C98950B1-DC4B-43DA-974F-EF2CF325EC2B}.Release|x64.ActiveCfg = Release|x64
{C98950B1-DC4B-43DA-974F-EF2CF325EC2B}.Release|x64.Build.0 = Release|x64
{C98950B1-DC4B-43DA-974F-EF2CF325EC2B}.Release|x86.ActiveCfg = Release|x86
{C98950B1-DC4B-43DA-974F-EF2CF325EC2B}.Release|x86.Build.0 = Release|x86
EndGlobalSection
GlobalSection(SolutionProperties) = preSolution
HideSolutionNode = FALSE
Expand Down Expand Up @@ -412,6 +430,7 @@ Global
{0D546118-B70A-44D0-B675-39EDB99FCEEE} = {8CEC2042-F11C-49F5-A674-2355793B600A}
{086FF8A0-9CEE-470A-9751-78B0F1340649} = {AA6F5582-3B71-49AC-AA39-8F7815AC46BE}
{F5B27CC4-1DF6-4ECD-A4FD-8200152F9A5A} = {AA6F5582-3B71-49AC-AA39-8F7815AC46BE}
{C98950B1-DC4B-43DA-974F-EF2CF325EC2B} = {AA6F5582-3B71-49AC-AA39-8F7815AC46BE}
EndGlobalSection
GlobalSection(ExtensibilityGlobals) = postSolution
SolutionGuid = {160A1D00-1F5B-40F8-A155-621B4459D78F}
Expand Down
2 changes: 1 addition & 1 deletion devenv.bat
Original file line number Diff line number Diff line change
Expand Up @@ -50,7 +50,7 @@ SET CORECLR_PROFILER={846F5F1C-F9AE-4B07-969E-05C26BC060D8}
SET CORECLR_PROFILER_PATH=%~dp0\src\Datadog.Trace.ClrProfiler.Native\bin\%profiler_configuration%\%profiler_platform%\Datadog.Trace.ClrProfiler.Native.dll

rem Limit profiling to these processes only
SET DD_PROFILER_PROCESSES=w3wp.exe;iisexpress.exe;Samples.AspNetCoreMvc2.exe;dotnet.exe;Samples.ConsoleFramework.exe;Samples.ConsoleCore.exe;Samples.SqlServer.exe;Samples.RedisCore.exe
SET DD_PROFILER_PROCESSES=w3wp.exe;iisexpress.exe;Samples.AspNetCoreMvc2.exe;dotnet.exe;Samples.ConsoleFramework.exe;Samples.ConsoleCore.exe;Samples.SqlServer.exe;Samples.RedisCore.exe;Samples.Elasticsearch.exe

rem Set location of integration definitions
SET DD_INTEGRATIONS=%~dp0\integrations.json;%~dp0\test-integrations.json
Expand Down
37 changes: 37 additions & 0 deletions integrations.json
Original file line number Diff line number Diff line change
Expand Up @@ -205,5 +205,42 @@
}
}
]
},
{
"name": "Elasticsearch",
"method_replacements": [
{
"caller": {
"assembly": "Elasticsearch.Net"
},
"target": {
"assembly": "Elasticsearch.Net",
"type": "Elasticsearch.Net.IRequestPipeline",
"method": "CallElasticsearch"
},
"wrapper": {
"assembly": "Datadog.Trace.ClrProfiler.Managed, Version=0.3.2.0, Culture=neutral, PublicKeyToken=def86d061d0d2eeb",
"type": "Datadog.Trace.ClrProfiler.Integrations.Elasticsearch.Net.Pipeline",
"method": "CallElasticsearch",
"signature": "10 01 02 1C 1C 1C"
}
},
{
"caller": {
"assembly": "Elasticsearch.Net"
},
"target": {
"assembly": "Elasticsearch.Net",
"type": "Elasticsearch.Net.IRequestPipeline",
"method": "CallElasticsearchAsync"
},
"wrapper": {
"assembly": "Datadog.Trace.ClrProfiler.Managed, Version=0.3.2.0, Culture=neutral, PublicKeyToken=def86d061d0d2eeb",
"type": "Datadog.Trace.ClrProfiler.Integrations.Elasticsearch.Net.Pipeline",
"method": "CallElasticsearchAsync",
"signature": "10 01 03 1C 1C 1C 1C"
}
}
]
}
]
Loading

0 comments on commit d6574b3

Please sign in to comment.