Closed
Description
metrics
package should support role reload, while it resets all observations and collectors.
Steps to reproduce
-
Create template application
cartridge create --name test-app
-
Change
init.lua
local ok, err = cartridge.cfg({ roles_reload_allowed = true, roles = { 'cartridge.roles.vshard-storage', 'cartridge.roles.vshard-router', 'cartridge.roles.metrics', 'app.roles.custom', }, })
-
Start an application
cartridge build cartridge start -d cartridge replicasets setup --bootstrap-vshard
-
Connect to instance
cartridge enter router
-
Execute reload
test-reload.router> metrics = require('metrics') --- ... test-reload.router> metrics.counter('c'):inc() --- ... test-reload.router> metrics.collect() --- - - label_pairs: alias: router timestamp: 1640183661554368 value: 1 metric_name: c ... test-reload.router> require("cartridge.roles").reload() --- - true ... test-reload.router> metrics = require('metrics') --- ... test-reload.router> metrics.collect() --- - [] ... test-reload.router> metrics.collectors() --- - [] ...