|
|
|
@ -55,6 +55,36 @@ class BotMassGaugeCollector(object): |
|
|
|
|
yield c |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class BotFoodCarrionCollector(object): |
|
|
|
|
def collect(self): |
|
|
|
|
c = CounterMetricFamily("carrion_food", "Carrion food consumed", labels=["name", "snake_id", "code_id"]) |
|
|
|
|
for user in game.users.users: |
|
|
|
|
user = game.users.users.get(user) |
|
|
|
|
rev = user.revs.get(user.current_rev) |
|
|
|
|
c.add_metric([user.name, str(user.current_worm), str(user.current_rev)], rev.carrion_food_consumed) |
|
|
|
|
yield c |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class BotFoodNaturalCollector(object): |
|
|
|
|
def collect(self): |
|
|
|
|
c = CounterMetricFamily("natural_food", "Natural food consumed", labels=["name", "snake_id", "code_id"]) |
|
|
|
|
for user in game.users.users: |
|
|
|
|
user = game.users.users.get(user) |
|
|
|
|
rev = user.revs.get(user.current_rev) |
|
|
|
|
c.add_metric([user.name, str(user.current_worm), str(user.current_rev)], rev.natural_food_consumed) |
|
|
|
|
yield c |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
class BotFoodHuntedCollector(object): |
|
|
|
|
def collect(self): |
|
|
|
|
c = CounterMetricFamily("hunted_food", "Hunted food consumed", labels=["name", "snake_id", "code_id"]) |
|
|
|
|
for user in game.users.users: |
|
|
|
|
user = game.users.users.get(user) |
|
|
|
|
rev = user.revs.get(user.current_rev) |
|
|
|
|
c.add_metric([user.name, str(user.current_worm), str(user.current_rev)], rev.hunted_food_consumed) |
|
|
|
|
yield c |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
def main(): |
|
|
|
|
global game |
|
|
|
|
game = Game() |
|
|
|
@ -73,6 +103,9 @@ def main(): |
|
|
|
|
REGISTRY.register(BotKillCollector()) |
|
|
|
|
REGISTRY.register(BotRevisionCountCollector()) |
|
|
|
|
REGISTRY.register(BotMassGaugeCollector()) |
|
|
|
|
REGISTRY.register(BotFoodCarrionCollector()) |
|
|
|
|
REGISTRY.register(BotFoodNaturalCollector()) |
|
|
|
|
REGISTRY.register(BotFoodHuntedCollector()) |
|
|
|
|
start_http_server(9000) |
|
|
|
|
logger.info("Start prometheus scrape endpoint") |
|
|
|
|
|
|
|
|
|