From dd2a6a7eaf7a1b8be5c42418b0bc921d4eb82dc4 Mon Sep 17 00:00:00 2001
From: Daniel Gerhardt <code@dgerhardt.net>
Date: Tue, 11 Aug 2015 11:03:42 +0200
Subject: [PATCH] Add custom gauge metric for logged in user count

---
 src/main/java/de/thm/arsnova/services/UserService.java | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/src/main/java/de/thm/arsnova/services/UserService.java b/src/main/java/de/thm/arsnova/services/UserService.java
index 51edbf061..c3ced54d4 100644
--- a/src/main/java/de/thm/arsnova/services/UserService.java
+++ b/src/main/java/de/thm/arsnova/services/UserService.java
@@ -17,6 +17,7 @@
  */
 package de.thm.arsnova.services;
 
+import com.codahale.metrics.annotation.Gauge;
 import com.github.leleuj.ss.oauth.client.authentication.OAuthAuthenticationToken;
 import de.thm.arsnova.dao.IDatabaseDao;
 import de.thm.arsnova.entities.DbUser;
@@ -50,6 +51,7 @@ import org.springframework.stereotype.Service;
 import org.springframework.transaction.annotation.Isolation;
 import org.springframework.transaction.annotation.Transactional;
 import org.springframework.web.util.UriUtils;
+import org.stagemonitor.core.metrics.MonitorGauges;
 
 import javax.annotation.PreDestroy;
 import javax.mail.MessagingException;
@@ -65,6 +67,7 @@ import java.util.regex.Pattern;
  * Performs all user related operations.
  */
 @Service
+@MonitorGauges
 public class UserService implements IUserService {
 
 	private static final int LOGIN_TRY_RESET_DELAY_MS = 30 * 1000;
@@ -325,6 +328,7 @@ public class UserService implements IUserService {
 	}
 
 	@Override
+	@Gauge
 	public int loggedInUsers() {
 		return user2session.size();
 	}
-- 
GitLab