Мониторинг и оповещения в конвейере данных
Пора объединить всё вместе! Вы, наверное, уже догадались: обработка ошибок с помощью try-except и ведение журнала неразрывно связаны между собой. Эти два подхода делают конвейер устойчивым и прозрачным, а также служат основой для более сложных решений мониторинга и оповещений.
pandas импортирован как pd, модуль logging загружен и настроен заранее. DataFrame raw_sales_data уже извлечён и готов к преобразованию.
Это упражнение является частью курса
ETL и ELT на Python
Интерактивное практическое упражнение
Попробуйте выполнить это упражнение, дополнив этот пример кода.
def transform(raw_data):
return raw_data.loc[raw_data["Total Price"] > 1000, :]
try:
# Attempt to transform DataFrame, log an info-level message
clean_sales_data = transform(raw_sales_data)
logging.____("Successfully filtered DataFrame by 'Total Price'")
except Exception:
# Log a warning-level message
____.____("Cannot filter DataFrame by 'Total Price'")