from weasyprint import HTML import pandas as pd import logging import os logger = logging.getLogger(__name__) def generate_pdf(df): """Generate a PDF report from log data.""" logger.info("Generating PDF report...") try: html_content = f"""

LabOps Dashboard Report

Generated on: {pd.Timestamp.now().strftime('%Y-%m-%d')}

Log Data

{df.head().to_html(index=False)} """ pdf_path = "/tmp/labops_report.pdf" HTML(string=html_content).write_pdf(pdf_path) logger.info(f"PDF report saved to {pdf_path}") return pdf_path except Exception as e: logger.error(f"Failed to generate PDF report: {e}") raise