Skip to content
GitLab
Menu
Projects
Groups
Snippets
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Sign in / Register
Toggle navigation
Menu
Open sidebar
Open Subsurface Data Universe Software
Platform
System
Lib
cloud
azure
OS Core Lib Azure
Commits
fb069e2d
Commit
fb069e2d
authored
Dec 17, 2020
by
Kishore Battula
Browse files
Merge branch 'requests-custom-props' into 'master'
Add to customDimensions from MDC for logged requests See merge request
!61
parents
959134f6
0e10e892
Pipeline
#19630
passed with stages
in 11 minutes and 16 seconds
Changes
4
Pipelines
1
Hide whitespace changes
Inline
Side-by-side
NOTICE
View file @
fb069e2d
...
...
@@ -389,6 +389,7 @@ The following software have components provided under the terms of this license:
- Microsoft Azure SDK annotations (from https://github.com/Microsoft/java-api-annotations)
- Microsoft Azure SDK for SQL API of Azure Cosmos DB Service (from https://github.com/Azure/azure-sdk-for-java)
- Microsoft Azure SDK for Service Bus (from https://github.com/Azure/azure-sdk-for-java)
- Microsoft Azure SDK for eventgrid (from https://github.com/Azure/azure-sdk-for-java)
- Microsoft Azure client library for Blob Storage (from https://github.com/Azure/azure-sdk-for-java)
- Microsoft Azure client library for Identity (from https://github.com/Azure/azure-sdk-for-java)
- Microsoft Azure client library for KeyVault Secrets (from https://github.com/Azure/azure-sdk-for-java)
...
...
src/main/java/org/opengroup/osdu/azure/di/ApplicationInsightsCustomConfiguration.java
0 → 100644
View file @
fb069e2d
package
org.opengroup.osdu.azure.di
;
import
com.microsoft.applicationinsights.extensibility.TelemetryInitializer
;
import
lombok.Getter
;
import
org.opengroup.osdu.azure.logging.CustomDimensionsTelemetryInitializer
;
import
org.springframework.context.annotation.Bean
;
import
org.springframework.context.annotation.Configuration
;
import
org.springframework.context.annotation.Lazy
;
/**
* A configuration bean class to set up Application Insights custom configurations.
*/
@Configuration
@Getter
@Lazy
public
class
ApplicationInsightsCustomConfiguration
{
/**
* Bean for CustomDimensionsTelemetryInitializer.
*
* @return instance of {@link CustomDimensionsTelemetryInitializer}
*/
@Bean
public
TelemetryInitializer
customDimensionsTelemetryInitializer
()
{
return
new
CustomDimensionsTelemetryInitializer
();
}
}
src/main/java/org/opengroup/osdu/azure/filters/Slf4jMDCFilter.java
View file @
fb069e2d
...
...
@@ -35,22 +35,24 @@ public class Slf4jMDCFilter implements Filter {
/**
* Filter logic.
* @param servletRequest Request object.
*
* @param servletRequest Request object.
* @param servletResponse Response object.
* @param filterChain Filter Chain object.
* @param filterChain
Filter Chain object.
* @throws IOException
* @throws ServletException
*/
@Override
public
void
doFilter
(
final
ServletRequest
servletRequest
,
final
ServletResponse
servletResponse
,
final
FilterChain
filterChain
)
throws
IOException
,
ServletException
{
MDC
.
clear
();
MDC
.
setContextMap
(
getContextMap
());
filterChain
.
doFilter
(
servletRequest
,
servletResponse
);
MDC
.
clear
();
}
/**
* Method to create context map for mdc.
*
* @return Context map.
*/
private
Map
<
String
,
String
>
getContextMap
()
{
...
...
src/main/java/org/opengroup/osdu/azure/logging/CustomDimensionsTelemetryInitializer.java
0 → 100644
View file @
fb069e2d
package
org.opengroup.osdu.azure.logging
;
import
com.microsoft.applicationinsights.internal.util.MapUtil
;
import
com.microsoft.applicationinsights.telemetry.ExceptionTelemetry
;
import
com.microsoft.applicationinsights.telemetry.RequestTelemetry
;
import
com.microsoft.applicationinsights.telemetry.Telemetry
;
import
com.microsoft.applicationinsights.web.extensibility.initializers.WebTelemetryInitializerBase
;
import
org.slf4j.MDC
;
/**
* Enrich telemetry with custom properties that will appear in customDimensions.
*/
public
class
CustomDimensionsTelemetryInitializer
extends
WebTelemetryInitializerBase
{
/**
* Add MDC custom properties to request or exception telemetry.
*
* @param telemetry the Telemetry object
*/
@Override
protected
void
onInitializeTelemetry
(
final
Telemetry
telemetry
)
{
if
(
telemetry
instanceof
RequestTelemetry
||
telemetry
instanceof
ExceptionTelemetry
)
{
MapUtil
.
copy
(
MDC
.
getCopyOfContextMap
(),
telemetry
.
getContext
().
getProperties
());
}
}
}
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment