This blog walks through approaches to implement custom notifications using SMTP, SendGrid, Azure Logic Apps, and Microsoft Graph API. Using SMTP with Python inside a Databricks notebook, you can generate an Excel report and send it via email whenever a pipeline fails.This blog walks through approaches to implement custom notifications using SMTP, SendGrid, Azure Logic Apps, and Microsoft Graph API. Using SMTP with Python inside a Databricks notebook, you can generate an Excel report and send it via email whenever a pipeline fails.

Custom Email Notifications for Databricks Pipeline Failures

2025/09/30 06:13

When working with Databricks pipelines and workflows, failures are inevitable. While Databricks provides built-in notifications for job failures, these alerts are often not customizable and may not fit specific reporting or formatting needs. A more flexible and cost-effective approach is to set up custom email notifications that include pipeline details and error messages in a structured format, such as an Excel attachment.

This blog walks through approaches to implement custom notifications using SMTP, SendGrid, Azure Logic Apps, and Microsoft Graph API.

Why Custom Notifications?

  • Flexible formatting: Include pipeline metadata, error messages, and runtime details.
  • Attachments: Share structured reports (Excel, CSV, etc.) instead of plain text.
  • Cost efficiency: Avoid additional third-party monitoring solutions.
  • Integration options: Easily plug into existing email infrastructure.

Approach 1: SMTP-Based Notifications

Using SMTP with Python inside a Databricks notebook, you can generate an Excel report and send it via email whenever a pipeline fails.

Example Implementation

import smtplib from email.mime.multipart import MIMEMultipart from email.mime.base import MIMEBase from email.mime.text import MIMEText from email import encoders from io import BytesIO import pandas as pd  #Sample pipeline history df = spark.createDataFrame([ ('pipeline1', 'success', '7min'), ('pipeline1', 'fail', '3min'), ('pipeline1', 'success', '10min') ], ["PipelineName", "Status", "Duration"])  # Convert DataFrame to Excel output = BytesIO()  with pd.ExcelWriter(output, engine='xlsxwriter') as writer:  df_pd = df.toPandas()  df_pd.to_excel(writer, index=False, sheet_name='Sheet1')  workbook = writer.book  worksheet = writer.sheets['Sheet1'] 
# Apply formatting header_format = workbook.add_format({     'bold': True,     'bg_color': '#FFF00',     'border': 1,     'align': 'center',     'valign': 'vcenter' }) for col_num, value in enumerate(df_pd.columns):     worksheet.write(0, col_num, value.upper(), header_format)  cell_format = workbook.add_format({'border': 1}) for row in range(1, len(df_pd) + 1):     for col in range(len(df_pd.columns)):         worksheet.write(row, col, df_pd.iloc[row-1, col], cell_format)  for i, col in enumerate(df_pd.columns):     worksheet.set_column(i, i, 20) output.seek(0)  # Email configuration sender = "from@example.com" receiver = "to@example.com" subject = "Pipeline Execution Report" body = """Hello Team,  Please find the attachment of the latest pipeline report.  Thanks, Pipeline Team"""  msg = MIMEMultipart() msg['From'] = sender msg['To'] = receiver msg['Subject'] = subject msg.attach(MIMEText(body, 'plain'))  part = MIMEBase('application', 'vnd.openxmlformats-officedocument.spreadsheetml.sheet') part.set_payload(output.read()) encoders.encode_base64(part) part.add_header('Content-Disposition', 'attachment; filename="pipeline_report.xlsx"') msg.attach(part)  smtp_server = "smtp.office.com" smtp_port = 587  with smtplib.SMTP(smtp_server, smtp_port) as server:     server.starttls()     server.login(sender, "sender_password")     server.send_message(msg)  print("Email sent successfully with Excel attachment") 

Scheduling Notifications

You can automate the notification trigger by scheduling the notebook:

Option 1: Databricks Jobs

  • Create or edit a Databricks job.
  • Add a task dependency so the notification script runs only if the previous task fails.
  • This ensures error details are captured and reported immediately.

Option 2: Azure Logic Apps

  • Configure a Logic App that listens for pipeline failures.
  • Pass pipeline details and attachments via an API call in JSON format.
  • Logic Apps handle email delivery and retry mechanisms.

Conclusion

While Databricks provides basic failure notifications, extending them with custom SMTP or Logic App workflows ensures:

  • Rich, formatted reports.
  • Team visibility with detailed context.
  • Seamless integration with enterprise communication tools.

This approach is cost-effective, scalable, and easily adaptable for large-scale pipeline monitoring.

Disclaimer: The articles reposted on this site are sourced from public platforms and are provided for informational purposes only. They do not necessarily reflect the views of MEXC. All rights remain with the original authors. If you believe any content infringes on third-party rights, please contact service@support.mexc.com for removal. MEXC makes no guarantees regarding the accuracy, completeness, or timeliness of the content and is not responsible for any actions taken based on the information provided. The content does not constitute financial, legal, or other professional advice, nor should it be considered a recommendation or endorsement by MEXC.

You May Also Like

BFX Presale Raises $7.5M as Solana Holds $243 and Avalanche Eyes $1B Treasury — Best Cryptos to Buy in 2025

BFX Presale Raises $7.5M as Solana Holds $243 and Avalanche Eyes $1B Treasury — Best Cryptos to Buy in 2025

BFX presale hits $7.5M with tokens at $0.024 and 30% bonus code BLOCK30, while Solana holds $243 and Avalanche builds a $1B treasury to attract institutions.
Share
Blockchainreporter2025/09/18 01:07
OCC Findings Suggest Major U.S. Banks Restricted Access for Digital Asset Firms Amid Debanking Probe

OCC Findings Suggest Major U.S. Banks Restricted Access for Digital Asset Firms Amid Debanking Probe

The post OCC Findings Suggest Major U.S. Banks Restricted Access for Digital Asset Firms Amid Debanking Probe appeared on BitcoinEthereumNews.com. The Office of the Comptroller of the Currency (OCC) has confirmed that nine major U.S. banks engaged in debanking practices from 2020 to 2023, restricting access for digital asset firms and other sectors. This marks the first official acknowledgment of these policies, which limited services based on customer types, affecting crypto businesses significantly. OCC report highlights inappropriate distinctions by banks like JPMorgan Chase and Bank of America, targeting crypto and high-risk sectors. Nine banks reviewed showed similar policies restricting customer access without objective risk assessments. Impacted industries include digital asset firms, with potential referrals to the Attorney General for unlawful practices. Discover how major U.S. banks’ debanking policies hit crypto firms hard, per OCC’s 2025 report. Learn the implications for digital assets and what regulators are doing next—stay informed on banking risks today! What Are the OCC’s Findings on Banks Debanking Crypto Firms? Banks debanking crypto firms involves major financial institutions limiting or denying services to digital asset businesses based on perceived risks, as detailed in a recent Office of the Comptroller of the Currency (OCC) report. From 2020 to 2023, nine of the largest U.S. banks implemented policies that required escalated reviews or outright restrictions for certain customers, including those in the crypto sector. This practice, now publicly confirmed, underscores ongoing tensions between traditional banking and emerging digital asset industries. How Did These Debanking Practices Affect Digital Asset Companies? The OCC’s six-page report, released on Wednesday, revealed that institutions such as JPMorgan Chase, Bank of America, Citigroup, Wells Fargo, U.S. Bancorp, Capital One, PNC Financial Services Group, Toronto-Dominion Bank, and Bank of Montreal made distinctions among customers that were deemed inappropriate. For digital asset firms, this meant heightened scrutiny or complete denial of banking services, hindering operations in an already volatile market. The regulator noted that these policies spanned…
Share
BitcoinEthereumNews2025/12/11 11:01