mirror of
https://github.com/ansible/awx.git
synced 2026-01-19 05:31:22 -03:30
translate Instance hostname to safe analytics name
* More robust translation of Instance hostname to analytics safe name by replacing all non-alpha numeric characters with _
This commit is contained in:
parent
093d204d19
commit
9e5fe7f5c6
@ -3,6 +3,7 @@ import asyncio
|
||||
import logging
|
||||
import aioredis
|
||||
import redis
|
||||
import re
|
||||
|
||||
from prometheus_client import (
|
||||
generate_latest,
|
||||
@ -106,8 +107,8 @@ class BroadcastWebsocketStats():
|
||||
self._registry = CollectorRegistry()
|
||||
|
||||
# TODO: More robust replacement
|
||||
self.name = self._local_hostname.replace('-', '_')
|
||||
self.remote_name = self._remote_hostname.replace('-', '_')
|
||||
self.name = self.safe_name(self._local_hostname)
|
||||
self.remote_name = self.safe_name(self._remote_hostname)
|
||||
|
||||
self._messages_received_total = Counter(f'awx_{self.remote_name}_messages_received_total',
|
||||
'Number of messages received, to be forwarded, by the broadcast websocket system',
|
||||
@ -128,6 +129,10 @@ class BroadcastWebsocketStats():
|
||||
registry=self._registry)
|
||||
self._internal_messages_received_per_minute = FixedSlidingWindow()
|
||||
|
||||
def safe_name(self, s):
|
||||
# Replace all non alpha-numeric characters with _
|
||||
return re.sub('[^0-9a-zA-Z]+', '_', s)
|
||||
|
||||
def unregister(self):
|
||||
self._registry.unregister(f'awx_{self.remote_name}_messages_received')
|
||||
self._registry.unregister(f'awx_{self.remote_name}_connection')
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user