Source code for vent.menus.logs
import npyscreen
from vent.api.actions import Action
[docs]class LogsForm(npyscreen.FormBaseNew):
""" Logs form for the Vent CLI """
[docs] def quit(self, *args, **kwargs):
""" Overridden to switch back to MAIN form """
self.parentApp.switchForm('MAIN')
[docs] def create(self):
""" Override method for creating FormBaseNew form """
self.add_handlers({"^T": self.quit, "^Q": self.quit})
self.add(npyscreen.TitleFixedText, name='Logs:', value='')
msg = 'Checking for container logs, please wait...'
self.logs_mle = self.add(npyscreen.Pager,
values=[msg])
self.action = Action()
response = self.action.logs()
if response[0]:
value = "Logs for each Vent container found:\n"
logs = response[1]
for container in logs:
value += "\n Container: "+container+"\n"
for log in logs[container]:
value += " "+log+"\n"
value += "\n"
self.logs_mle.values = value.split("\n")
else:
msg = "There was an issue retrieving logs for Vent containers: "
self.logs_mle.values = [msg, str(response[1]),
"Please see vent.log for more details."]