mirror of
https://github.com/ansible-collections/community.general.git
synced 2025-08-23 06:21:43 -07:00
add playbook runtime stat in the logstash callback stats (#25785)
This commit is contained in:
parent
ac0202fba1
commit
7974ad34f1
1 changed files with 5 additions and 0 deletions
|
@ -22,6 +22,7 @@ import os
|
||||||
import json
|
import json
|
||||||
import socket
|
import socket
|
||||||
import uuid
|
import uuid
|
||||||
|
from datetime import datetime
|
||||||
|
|
||||||
import logging
|
import logging
|
||||||
|
|
||||||
|
@ -86,6 +87,7 @@ class CallbackModule(CallbackBase):
|
||||||
self.hostname = socket.gethostname()
|
self.hostname = socket.gethostname()
|
||||||
self.session = str(uuid.uuid1())
|
self.session = str(uuid.uuid1())
|
||||||
self.errors = 0
|
self.errors = 0
|
||||||
|
self.start_time = datetime.utcnow()
|
||||||
|
|
||||||
def v2_playbook_on_start(self, playbook):
|
def v2_playbook_on_start(self, playbook):
|
||||||
self.playbook = playbook._file_name
|
self.playbook = playbook._file_name
|
||||||
|
@ -99,6 +101,8 @@ class CallbackModule(CallbackBase):
|
||||||
self.logger.info("ansible start", extra=data)
|
self.logger.info("ansible start", extra=data)
|
||||||
|
|
||||||
def v2_playbook_on_stats(self, stats):
|
def v2_playbook_on_stats(self, stats):
|
||||||
|
end_time = datetime.utcnow()
|
||||||
|
runtime = end_time - self.start_time
|
||||||
summarize_stat = {}
|
summarize_stat = {}
|
||||||
for host in stats.processed.keys():
|
for host in stats.processed.keys():
|
||||||
summarize_stat[host] = stats.summarize(host)
|
summarize_stat[host] = stats.summarize(host)
|
||||||
|
@ -114,6 +118,7 @@ class CallbackModule(CallbackBase):
|
||||||
'session': self.session,
|
'session': self.session,
|
||||||
'ansible_type': "finish",
|
'ansible_type': "finish",
|
||||||
'ansible_playbook': self.playbook,
|
'ansible_playbook': self.playbook,
|
||||||
|
'ansible_playbook_duration': runtime.total_seconds(),
|
||||||
'ansible_result': json.dumps(summarize_stat),
|
'ansible_result': json.dumps(summarize_stat),
|
||||||
}
|
}
|
||||||
self.logger.info("ansible stats", extra=data)
|
self.logger.info("ansible stats", extra=data)
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue