Skip to content

Commit

Permalink
Add calls to metrics
Browse files Browse the repository at this point in the history
  • Loading branch information
Sheikah45 committed Jan 30, 2021
1 parent dec4d4e commit dfa885c
Show file tree
Hide file tree
Showing 3 changed files with 9 additions and 8 deletions.
11 changes: 6 additions & 5 deletions server/lobbyconnection.py
Original file line number Diff line number Diff line change
Expand Up @@ -73,7 +73,7 @@ def __init__(
self.session = int(random.randrange(0, 4294967295))
self.protocol: Protocol = None
self.user_agent = None
self._version = None
self.version = None

self._attempted_connectivity_test = False

Expand Down Expand Up @@ -402,15 +402,16 @@ async def check_user_login(self, conn, username, password):
return player_id, real_username, steamid

def _set_user_agent_and_version(self, user_agent, version):
metrics.user_connections.labels(str(self.user_agent)).dec()
metrics.user_connections.labels(str(self.user_agent), str(self.version)).dec()
self.user_agent = user_agent
metrics.user_connections.labels(str(self.user_agent)).inc()

# only count a new version if it previously wasn't set
# to avoid double counting
if self._version is None and version is not None:
if self.version is None and version is not None:
metrics.user_agent_version.labels(str(version)).inc()
self._version = version
self.version = version

metrics.user_connections.labels(str(self.user_agent), str(self.version)).inc()

async def _check_user_agent(self):
if not self.user_agent or "downlords-faf-client" not in self.user_agent:
Expand Down
2 changes: 1 addition & 1 deletion server/metrics.py
Original file line number Diff line number Diff line change
Expand Up @@ -43,7 +43,7 @@
user_connections = Gauge(
"server_user_connections",
"Number of users currently connected to server",
["user_agent","version"],
["user_agent", "version"],
)

user_logins = Counter(
Expand Down
4 changes: 2 additions & 2 deletions server/servercontext.py
Original file line number Diff line number Diff line change
Expand Up @@ -84,7 +84,7 @@ async def client_connected(self, stream_reader, stream_writer):

try:
await connection.on_connection_made(protocol, Address(*stream_writer.get_extra_info("peername")))
metrics.user_connections.labels("None").inc()
metrics.user_connections.labels("None", "None").inc()
while protocol.is_connected():
message = await protocol.read_message()
with metrics.connection_on_message_received.time():
Expand All @@ -98,7 +98,7 @@ async def client_connected(self, stream_reader, stream_writer):
self._logger.exception(ex)
finally:
del self.connections[connection]
metrics.user_connections.labels(connection.user_agent).dec()
metrics.user_connections.labels(connection.user_agent, connection.version).dec()
await protocol.close()
await connection.on_connection_lost()
self._logger.debug("%s: Client disconnected", self.name)

0 comments on commit dfa885c

Please sign in to comment.