mirror of
https://github.com/puppetlabs/vmpooler.git
synced 2026-01-26 01:58:41 -05:00
(POOLER-134) Ship VM usage stats
This commit updates vmpooler to ship VM usage stats when a VM is destroyed. The stats are gathered for jobs based on user and pool name. If a jenkins build URL is present then this is broken down by user, instance, value stream, branch and project. Additionally, if present then the RMM_COMPONENT_TO_TEST_NAME will be listed after project. Without this change we do not collect stats on per VM usage and its correlation to users and pools.
This commit is contained in:
parent
e3e51afc05
commit
9a57c6d1b5
7 changed files with 270 additions and 4 deletions
|
|
@ -45,10 +45,11 @@ def create_ready_vm(template, name, token = nil)
|
|||
redis.hset("vmpooler__vm__#{name}", "template", template)
|
||||
end
|
||||
|
||||
def create_running_vm(template, name, token = nil)
|
||||
create_vm(name, token)
|
||||
def create_running_vm(template, name, token = nil, user = nil)
|
||||
create_vm(name, token, nil, user)
|
||||
redis.sadd("vmpooler__running__#{template}", name)
|
||||
redis.hset("vmpooler__vm__#{name}", "template", template)
|
||||
redis.hset("vmpooler__vm__#{name}", 'template', template)
|
||||
redis.hset("vmpooler__vm__#{name}", 'checkout', Time.now)
|
||||
end
|
||||
|
||||
def create_pending_vm(template, name, token = nil)
|
||||
|
|
@ -57,10 +58,11 @@ def create_pending_vm(template, name, token = nil)
|
|||
redis.hset("vmpooler__vm__#{name}", "template", template)
|
||||
end
|
||||
|
||||
def create_vm(name, token = nil, redis_handle = nil)
|
||||
def create_vm(name, token = nil, redis_handle = nil, user = nil)
|
||||
redis_db = redis_handle ? redis_handle : redis
|
||||
redis_db.hset("vmpooler__vm__#{name}", 'checkout', Time.now)
|
||||
redis_db.hset("vmpooler__vm__#{name}", 'token:token', token) if token
|
||||
redis_db.hset("vmpooler__vm__#{name}", 'token:user', user) if user
|
||||
end
|
||||
|
||||
def create_completed_vm(name, pool, active = false, redis_handle = nil)
|
||||
|
|
@ -81,6 +83,11 @@ def create_migrating_vm(name, pool, redis_handle = nil)
|
|||
redis_db.sadd("vmpooler__migrating__#{pool}", name)
|
||||
end
|
||||
|
||||
def create_tag(vm, tag_name, tag_value, redis_handle = nil)
|
||||
redis_db = redis_handle ? redis-handle : redis
|
||||
redis_db.hset("vmpooler__vm__#{vm}", "tag:#{tag_name}", tag_value)
|
||||
end
|
||||
|
||||
def add_vm_to_migration_set(name, redis_handle = nil)
|
||||
redis_db = redis_handle ? redis_handle : redis
|
||||
redis_db.sadd('vmpooler__migration', name)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue