Add an `isEphemeral` dimension to message delivery latency metrics
This commit is contained in:
parent
4ffd164461
commit
9a1da23bdb
|
@ -781,6 +781,10 @@ public class MessageController {
|
||||||
"rest",
|
"rest",
|
||||||
auth.getAuthenticatedDevice().isPrimary(),
|
auth.getAuthenticatedDevice().isPrimary(),
|
||||||
outgoingMessageEntity.urgent(),
|
outgoingMessageEntity.urgent(),
|
||||||
|
// Messages fetched via this endpoint (as opposed to WebSocketConnection) are never ephemeral
|
||||||
|
// because, by definition, the client doesn't have a "live" connection via which to receive
|
||||||
|
// ephemeral messages.
|
||||||
|
false,
|
||||||
userAgent,
|
userAgent,
|
||||||
clientReleaseManager);
|
clientReleaseManager);
|
||||||
})
|
})
|
||||||
|
|
|
@ -72,14 +72,16 @@ public final class MessageMetrics {
|
||||||
final String channel,
|
final String channel,
|
||||||
final boolean isPrimaryDevice,
|
final boolean isPrimaryDevice,
|
||||||
final boolean isUrgent,
|
final boolean isUrgent,
|
||||||
|
final boolean isEphemeral,
|
||||||
final String userAgent,
|
final String userAgent,
|
||||||
final ClientReleaseManager clientReleaseManager) {
|
final ClientReleaseManager clientReleaseManager) {
|
||||||
|
|
||||||
final List<Tag> tags = new ArrayList<>(4);
|
final List<Tag> tags = new ArrayList<>();
|
||||||
tags.add(UserAgentTagUtil.getPlatformTag(userAgent));
|
tags.add(UserAgentTagUtil.getPlatformTag(userAgent));
|
||||||
tags.add(Tag.of("channel", channel));
|
tags.add(Tag.of("channel", channel));
|
||||||
tags.add(Tag.of("isPrimary", String.valueOf(isPrimaryDevice)));
|
tags.add(Tag.of("isPrimary", String.valueOf(isPrimaryDevice)));
|
||||||
tags.add(Tag.of("isUrgent", String.valueOf(isUrgent)));
|
tags.add(Tag.of("isUrgent", String.valueOf(isUrgent)));
|
||||||
|
tags.add(Tag.of("isEphemeral", String.valueOf(isEphemeral)));
|
||||||
|
|
||||||
UserAgentTagUtil.getClientVersionTag(userAgent, clientReleaseManager).ifPresent(tags::add);
|
UserAgentTagUtil.getClientVersionTag(userAgent, clientReleaseManager).ifPresent(tags::add);
|
||||||
|
|
||||||
|
|
|
@ -255,6 +255,7 @@ public class WebSocketConnection implements WebSocketConnectionEventListener {
|
||||||
"websocket",
|
"websocket",
|
||||||
auth.getAuthenticatedDevice().isPrimary(),
|
auth.getAuthenticatedDevice().isPrimary(),
|
||||||
message.getUrgent(),
|
message.getUrgent(),
|
||||||
|
message.getEphemeral(),
|
||||||
client.getUserAgent(),
|
client.getUserAgent(),
|
||||||
clientReleaseManager);
|
clientReleaseManager);
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue