Skip to content

Commit

Permalink
fix duration in live metrics sample telemetry feature (#1996)
Browse files Browse the repository at this point in the history
  • Loading branch information
kryalama committed Dec 9, 2021
1 parent 7e90a14 commit b5a2f38
Show file tree
Hide file tree
Showing 2 changed files with 8 additions and 8 deletions.
Original file line number Diff line number Diff line change
Expand Up @@ -37,6 +37,7 @@
import com.microsoft.applicationinsights.agent.internal.telemetry.TelemetryClient;
import java.lang.management.ManagementFactory;
import java.lang.management.MemoryMXBean;
import java.time.Duration;
import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
Expand Down Expand Up @@ -247,8 +248,8 @@ private void addDependency(RemoteDependencyData telemetry, int itemCount) {
if (counters == null) {
return;
}
counters.rddsAndDuations.addAndGet(
Counters.encodeCountAndDuration(itemCount, parseDurationToMillis(telemetry.getDuration())));
long durationMillis = parseDurationToMillis(telemetry.getDuration());
counters.rddsAndDuations.addAndGet(Counters.encodeCountAndDuration(itemCount, durationMillis));
Boolean success = telemetry.isSuccess();
if (success != null && !success) { // success should not be null
counters.unsuccessfulRdds.incrementAndGet();
Expand All @@ -262,7 +263,7 @@ private void addDependency(RemoteDependencyData telemetry, int itemCount) {
quickPulseDependencyDocument.setCommandName(telemetry.getData());
quickPulseDependencyDocument.setTarget(telemetry.getTarget());
quickPulseDependencyDocument.setSuccess(telemetry.isSuccess());
quickPulseDependencyDocument.setDuration(telemetry.getDuration());
quickPulseDependencyDocument.setDuration(Duration.ofMillis(durationMillis).toString());
quickPulseDependencyDocument.setResultCode(telemetry.getResultCode());
quickPulseDependencyDocument.setOperationName(telemetry.getId());
quickPulseDependencyDocument.setDependencyTypeName(telemetry.getType());
Expand Down Expand Up @@ -317,10 +318,9 @@ private void addRequest(RequestData requestTelemetry, int itemCount, String oper
if (counters == null) {
return;
}

long durationMillis = parseDurationToMillis(requestTelemetry.getDuration());
counters.requestsAndDurations.addAndGet(
Counters.encodeCountAndDuration(
itemCount, parseDurationToMillis(requestTelemetry.getDuration())));
Counters.encodeCountAndDuration(itemCount, durationMillis));
if (!requestTelemetry.isSuccess()) {
counters.unsuccessfulRequests.incrementAndGet();
}
Expand All @@ -330,7 +330,7 @@ private void addRequest(RequestData requestTelemetry, int itemCount, String oper
quickPulseRequestDocument.setOperationId(requestTelemetry.getId());
quickPulseRequestDocument.setVersion("1.0");
quickPulseRequestDocument.setSuccess(requestTelemetry.isSuccess());
quickPulseRequestDocument.setDuration(requestTelemetry.getDuration());
quickPulseRequestDocument.setDuration(Duration.ofMillis(durationMillis).toString());
quickPulseRequestDocument.setResponseCode(requestTelemetry.getResponseCode());
quickPulseRequestDocument.setOperationName(operationName);
quickPulseRequestDocument.setName(requestTelemetry.getName());
Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -95,7 +95,7 @@ public void testPostRequest() throws InterruptedException {
String expectedPingRequestBody =
"\\{\"Documents\":null,\"InstrumentationKey\":null,\"Metrics\":null,\"InvariantVersion\":1,\"Timestamp\":\"\\\\/Date\\(\\d+\\)\\\\/\",\"Version\":\"\\(unknown\\)\",\"StreamId\":\"qpid123\",\"MachineName\":\"machine1\",\"Instance\":\"instance1\",\"RoleName\":null\\}";
String expectedPostRequestBody =
"\\[\\{\"Documents\":\\[\\{\"__type\":\"RequestTelemetryDocument\",\"DocumentType\":\"Request\",\"Version\":\"1.0\",\"OperationId\":null,\"Properties\":\\{\"customProperty\":\"customValue\"\\},\"Name\":\"request-test\",\"Success\":true,\"Duration\":\"\\d+:\\d+:\\d+\\.\\d+\",\"ResponseCode\":\"200\",\"OperationName\":null,\"Url\":\"foo\"\\},\\{\"__type\":\"DependencyTelemetryDocument\",\"DocumentType\":\"RemoteDependency\",\"Version\":\"1.0\",\"OperationId\":null,\"Properties\":\\{\"customProperty\":\"customValue\"\\},\"Name\":\"dep-test\",\"Target\":null,\"Success\":true,\"Duration\":\"\\d+:\\d+:\\d+.\\d+\",\"ResultCode\":null,\"CommandName\":\"dep-test-cmd\",\"DependencyTypeName\":null,\"OperationName\":null\\},\\{\"__type\":\"ExceptionTelemetryDocument\",\"DocumentType\":\"Exception\",\"Version\":\"1.0\",\"OperationId\":null,\"Properties\":null,\"Exception\":\"\",\"ExceptionMessage\":\"test\",\"ExceptionType\":\"java.lang.Exception\"\\}\\],\"InstrumentationKey\":\""
"\\[\\{\"Documents\":\\[\\{\"__type\":\"RequestTelemetryDocument\",\"DocumentType\":\"Request\",\"Version\":\"1.0\",\"OperationId\":null,\"Properties\":\\{\"customProperty\":\"customValue\"\\},\"Name\":\"request-test\",\"Success\":true,\"Duration\":\"PT.*S\",\"ResponseCode\":\"200\",\"OperationName\":null,\"Url\":\"foo\"\\},\\{\"__type\":\"DependencyTelemetryDocument\",\"DocumentType\":\"RemoteDependency\",\"Version\":\"1.0\",\"OperationId\":null,\"Properties\":\\{\"customProperty\":\"customValue\"\\},\"Name\":\"dep-test\",\"Target\":null,\"Success\":true,\"Duration\":\"PT.*S\",\"ResultCode\":null,\"CommandName\":\"dep-test-cmd\",\"DependencyTypeName\":null,\"OperationName\":null\\},\\{\"__type\":\"ExceptionTelemetryDocument\",\"DocumentType\":\"Exception\",\"Version\":\"1.0\",\"OperationId\":null,\"Properties\":null,\"Exception\":\"\",\"ExceptionMessage\":\"test\",\"ExceptionType\":\"java.lang.Exception\"\\}\\],\"InstrumentationKey\":\""
+ instrumentationKey
+ "\",\"Metrics\":\\[\\{\"Name\":\"\\\\\\\\ApplicationInsights\\\\\\\\Requests\\\\\\/Sec\",\"Value\":\\d+,\"Weight\":\\d+\\},\\{\"Name\":\"\\\\\\\\ApplicationInsights\\\\\\\\Request Duration\",\"Value\":\\d+,\"Weight\":\\d+\\},\\{\"Name\":\"\\\\\\\\ApplicationInsights\\\\\\\\Requests Failed\\\\\\/Sec\",\"Value\":\\d+,\"Weight\":\\d+\\},\\{\"Name\":\"\\\\\\\\ApplicationInsights\\\\\\\\Requests Succeeded\\\\\\/Sec\",\"Value\":\\d+,\"Weight\":\\d+\\},\\{\"Name\":\"\\\\\\\\ApplicationInsights\\\\\\\\Dependency Calls\\\\\\/Sec\",\"Value\":\\d+,\"Weight\":\\d+\\},\\{\"Name\":\"\\\\\\\\ApplicationInsights\\\\\\\\Dependency Call Duration\",\"Value\":\\d+,\"Weight\":\\d+\\},\\{\"Name\":\"\\\\\\\\ApplicationInsights\\\\\\\\Dependency Calls Failed\\\\\\/Sec\",\"Value\":\\d+,\"Weight\":\\d+\\},\\{\"Name\":\"\\\\\\\\ApplicationInsights\\\\\\\\Dependency Calls Succeeded\\\\\\/Sec\",\"Value\":\\d+,\"Weight\":\\d+\\},\\{\"Name\":\"\\\\\\\\ApplicationInsights\\\\\\\\Exceptions\\\\\\/Sec\",\"Value\":\\d+,\"Weight\":\\d+\\},\\{\"Name\":\"\\\\\\\\Memory\\\\\\\\Committed Bytes\",\"Value\":\\d+,\"Weight\":\\d+\\},\\{\"Name\":\"\\\\\\\\Processor\\(_Total\\)\\\\\\\\% Processor Time\",\"Value\":-?\\d+,\"Weight\":\\d+\\}\\],\"InvariantVersion\":1,\"Timestamp\":\"\\\\\\/Date\\(\\d+\\)\\\\\\/\",\"Version\":\"[^\"]*\",\"StreamId\":null,\"MachineName\":\"machine1\",\"Instance\":\"instance1\",\"RoleName\":null\\}\\]";
QuickPulsePingSender pingSender =
Expand Down

0 comments on commit b5a2f38

Please sign in to comment.