def __logs_to_report_html(host, language): """ generate HTML report with d3_tree_v2_graph for a host Args: host: the host language: language Returns: HTML report """ session = create_connection(language) try: logs = [] logs_data = session.query(HostsLog).filter(HostsLog.host == host).all() for log in logs_data: data = { "SCAN_ID": log.scan_id, "HOST": host, "USERNAME": log.username, "PASSWORD": log.password, "PORT": log.port, "TYPE": log.type, "TIME": log.date, "DESCRIPTION": log.description } logs.append(data) from core.log import build_graph if compatible.version() is 2: import sys reload(sys) sys.setdefaultencoding('utf8') _graph = build_graph("d3_tree_v2_graph", "en", logs, 'HOST', 'USERNAME', 'PASSWORD', 'PORT', 'TYPE', 'DESCRIPTION') from lib.html_log import _log_data _table = _log_data.table_title.format(_graph, _log_data.css_1, 'HOST', 'USERNAME', 'PASSWORD', 'PORT', 'TYPE', 'DESCRIPTION', 'TIME') for value in logs: _table += _log_data.table_items.format( value['HOST'], value['USERNAME'], value['PASSWORD'], value['PORT'], value['TYPE'], value['DESCRIPTION'], value['TIME']) _table += _log_data.table_end + '<p class="footer">' + messages("en", "nettacker_report") \ .format(compatible.__version__, compatible.__code_name__, now()) + '</p>' return _table except Exception as _: return ""
def __logs_to_report_html(host, language): """ generate HTML report with d3_tree_v2_graph for a host Args: host: the host language: language Returns: HTML report """ try: logs = [] for log in send_read_query( "select host,username,password,port,type,date,description from hosts_log where host=\"{0}\"" .format(host), language): data = { "SCAN_ID": host, "HOST": log[0], "USERNAME": log[1], "PASSWORD": log[2], "PORT": log[3], "TYPE": log[4], "TIME": log[5], "DESCRIPTION": log[6] } logs.append(data) from core.log import build_graph if compatible.version() is 2: import sys reload(sys) sys.setdefaultencoding('utf8') _graph = build_graph("d3_tree_v2_graph", "en", logs, 'HOST', 'USERNAME', 'PASSWORD', 'PORT', 'TYPE', 'DESCRIPTION') from lib.html_log import _log_data _table = _log_data.table_title.format(_graph, _log_data.css_1, 'HOST', 'USERNAME', 'PASSWORD', 'PORT', 'TYPE', 'DESCRIPTION', 'TIME') for value in logs: _table += _log_data.table_items.format( value['HOST'], value['USERNAME'], value['PASSWORD'], value['PORT'], value['TYPE'], value['DESCRIPTION'], value['TIME']) _table += _log_data.table_end + '<p class="footer">' + messages("en", "nettacker_report") \ .format(compatible.__version__, compatible.__code_name__, now()) + '</p>' return _table except: return ""