%global _empty_manifest_terminate_build 0 Name: python-luigi-monitor Version: 1.1.4 Release: 1 Summary: Send summary messages of your Luigi jobs to Slack. License: MIT URL: https://github.com/hudl/luigi-monitor Source0: https://mirrors.aliyun.com/pypi/web/packages/61/a4/b170904b6a9a5c49a39231c582bd7bed3692ed4326542f6319437803b427/luigi-monitor-1.1.4.tar.gz BuildArch: noarch %description ## Luigi Monitor [![Pypi Latest Version](https://img.shields.io/pypi/v/luigi-monitor.svg)](https://img.shields.io/pypi/v/luigi-monitor.svg) [![License](https://img.shields.io/pypi/l/luigi-monitor.svg)](https://img.shields.io/pypi/l/luigi-monitor.svg) [![Python Versions](https://img.shields.io/pypi/pyversions/luigi-monitor.svg)](https://img.shields.io/pypi/pyversions/luigi-monitor.svg) [![Pypi Format](https://img.shields.io/pypi/format/luigi-monitor.svg)](https://img.shields.io/pypi/format/luigi-monitor.svg) [![Build Status](https://travis-ci.org/hudl/luigi-monitor.svg?branch=master)](https://travis-ci.org/hudl/luigi-monitor) ![message](https://raw.github.com/hudl/luigi-monitor/master/message.png) Send summary messages of your Luigi jobs to Slack. ### Overview [Luigi](https://github.com/spotify/luigi) is a great tool for making job pipelines, but it's hard to know the status of a run. Luigi has support for error emails, but this requires configuring your machine to send email, which is a hassle for short-lived EMR clusters. Further, it sends an email for every failure, which can quickly swamp your inbox. By contrast, this tool gathers all your failures and missing dependencies and sends a summary Slack message when the job is finished. ### Usage With default app username: ```python import luigi from luigi_monitor import monitor ... if __name__ == "__main__": with monitor(slack_url=, max_print=10): luigi.run(main_task_cls=MainClass) ``` With dynamic app username: ```python import luigi from luigi_monitor import monitor ... if __name__ == "__main__": with monitor(slack_url=, max_print=10, username="FooBar Monitor"): luigi.run(main_task_cls=MainClass) ``` Monitoring and notifying on various events: Currently supports: `SUCCESS`, `DEPENDENCY_MISSING`, and `FAILURE` By default, all three of the above are monitored and notified on. If, `SUCCESS` event is monitored and all tasks succeed then the notification text is "Job ran successfully" instead of listing _all_ successful tasks. ```python import luigi from luigi_monitor import monitor ... if __name__ == "__main__": with monitor(slack_url=, events=['DEPENDENCY_MISSING', 'FAILURE']): luigi.run(main_task_cls=MainClass) ``` Alternatively: `luigi-monitor --module path.to.module TaskName` NB: if you plan to use luigi-monitor from the command line, set options using `luigi.cfg`: ``` [luigi-monitor] slack_url= max_print= username= ``` This is a work in progress. Particularly, note that: * It only sends notifications via Slack %package -n python3-luigi-monitor Summary: Send summary messages of your Luigi jobs to Slack. Provides: python-luigi-monitor BuildRequires: python3-devel BuildRequires: python3-setuptools BuildRequires: python3-pip %description -n python3-luigi-monitor ## Luigi Monitor [![Pypi Latest Version](https://img.shields.io/pypi/v/luigi-monitor.svg)](https://img.shields.io/pypi/v/luigi-monitor.svg) [![License](https://img.shields.io/pypi/l/luigi-monitor.svg)](https://img.shields.io/pypi/l/luigi-monitor.svg) [![Python Versions](https://img.shields.io/pypi/pyversions/luigi-monitor.svg)](https://img.shields.io/pypi/pyversions/luigi-monitor.svg) [![Pypi Format](https://img.shields.io/pypi/format/luigi-monitor.svg)](https://img.shields.io/pypi/format/luigi-monitor.svg) [![Build Status](https://travis-ci.org/hudl/luigi-monitor.svg?branch=master)](https://travis-ci.org/hudl/luigi-monitor) ![message](https://raw.github.com/hudl/luigi-monitor/master/message.png) Send summary messages of your Luigi jobs to Slack. ### Overview [Luigi](https://github.com/spotify/luigi) is a great tool for making job pipelines, but it's hard to know the status of a run. Luigi has support for error emails, but this requires configuring your machine to send email, which is a hassle for short-lived EMR clusters. Further, it sends an email for every failure, which can quickly swamp your inbox. By contrast, this tool gathers all your failures and missing dependencies and sends a summary Slack message when the job is finished. ### Usage With default app username: ```python import luigi from luigi_monitor import monitor ... if __name__ == "__main__": with monitor(slack_url=, max_print=10): luigi.run(main_task_cls=MainClass) ``` With dynamic app username: ```python import luigi from luigi_monitor import monitor ... if __name__ == "__main__": with monitor(slack_url=, max_print=10, username="FooBar Monitor"): luigi.run(main_task_cls=MainClass) ``` Monitoring and notifying on various events: Currently supports: `SUCCESS`, `DEPENDENCY_MISSING`, and `FAILURE` By default, all three of the above are monitored and notified on. If, `SUCCESS` event is monitored and all tasks succeed then the notification text is "Job ran successfully" instead of listing _all_ successful tasks. ```python import luigi from luigi_monitor import monitor ... if __name__ == "__main__": with monitor(slack_url=, events=['DEPENDENCY_MISSING', 'FAILURE']): luigi.run(main_task_cls=MainClass) ``` Alternatively: `luigi-monitor --module path.to.module TaskName` NB: if you plan to use luigi-monitor from the command line, set options using `luigi.cfg`: ``` [luigi-monitor] slack_url= max_print= username= ``` This is a work in progress. Particularly, note that: * It only sends notifications via Slack %package help Summary: Development documents and examples for luigi-monitor Provides: python3-luigi-monitor-doc %description help ## Luigi Monitor [![Pypi Latest Version](https://img.shields.io/pypi/v/luigi-monitor.svg)](https://img.shields.io/pypi/v/luigi-monitor.svg) [![License](https://img.shields.io/pypi/l/luigi-monitor.svg)](https://img.shields.io/pypi/l/luigi-monitor.svg) [![Python Versions](https://img.shields.io/pypi/pyversions/luigi-monitor.svg)](https://img.shields.io/pypi/pyversions/luigi-monitor.svg) [![Pypi Format](https://img.shields.io/pypi/format/luigi-monitor.svg)](https://img.shields.io/pypi/format/luigi-monitor.svg) [![Build Status](https://travis-ci.org/hudl/luigi-monitor.svg?branch=master)](https://travis-ci.org/hudl/luigi-monitor) ![message](https://raw.github.com/hudl/luigi-monitor/master/message.png) Send summary messages of your Luigi jobs to Slack. ### Overview [Luigi](https://github.com/spotify/luigi) is a great tool for making job pipelines, but it's hard to know the status of a run. Luigi has support for error emails, but this requires configuring your machine to send email, which is a hassle for short-lived EMR clusters. Further, it sends an email for every failure, which can quickly swamp your inbox. By contrast, this tool gathers all your failures and missing dependencies and sends a summary Slack message when the job is finished. ### Usage With default app username: ```python import luigi from luigi_monitor import monitor ... if __name__ == "__main__": with monitor(slack_url=, max_print=10): luigi.run(main_task_cls=MainClass) ``` With dynamic app username: ```python import luigi from luigi_monitor import monitor ... if __name__ == "__main__": with monitor(slack_url=, max_print=10, username="FooBar Monitor"): luigi.run(main_task_cls=MainClass) ``` Monitoring and notifying on various events: Currently supports: `SUCCESS`, `DEPENDENCY_MISSING`, and `FAILURE` By default, all three of the above are monitored and notified on. If, `SUCCESS` event is monitored and all tasks succeed then the notification text is "Job ran successfully" instead of listing _all_ successful tasks. ```python import luigi from luigi_monitor import monitor ... if __name__ == "__main__": with monitor(slack_url=, events=['DEPENDENCY_MISSING', 'FAILURE']): luigi.run(main_task_cls=MainClass) ``` Alternatively: `luigi-monitor --module path.to.module TaskName` NB: if you plan to use luigi-monitor from the command line, set options using `luigi.cfg`: ``` [luigi-monitor] slack_url= max_print= username= ``` This is a work in progress. Particularly, note that: * It only sends notifications via Slack %prep %autosetup -n luigi-monitor-1.1.4 %build %py3_build %install %py3_install install -d -m755 %{buildroot}/%{_pkgdocdir} if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi pushd %{buildroot} if [ -d usr/lib ]; then find usr/lib -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/lib64 ]; then find usr/lib64 -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/bin ]; then find usr/bin -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi if [ -d usr/sbin ]; then find usr/sbin -type f -printf "\"/%h/%f\"\n" >> filelist.lst fi touch doclist.lst if [ -d usr/share/man ]; then find usr/share/man -type f -printf "\"/%h/%f.gz\"\n" >> doclist.lst fi popd mv %{buildroot}/filelist.lst . mv %{buildroot}/doclist.lst . %files -n python3-luigi-monitor -f filelist.lst %dir %{python3_sitelib}/* %files help -f doclist.lst %{_docdir}/* %changelog * Thu Jun 08 2023 Python_Bot - 1.1.4-1 - Package Spec generated