Code Monkey home page Code Monkey logo

ereb's People

Contributors

andrey-yantsen avatar bskaplou avatar dmitrykuzmenkov avatar ezotrank avatar fliptheweb avatar kr00lix avatar nimdraugsael avatar nurikk avatar pistonsky avatar standrei avatar timrael avatar xxxvii avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

ereb's Issues

was found dead and finalized

What the hell is that, excuse me? If it doesn't mean that my task failed, then please don't bother my slack channel!

"Failed tasks" doesn't work

[E 161031 13:31:18 web:1524] Uncaught exception GET /status/recent_failed_tasks (127.0.0.1)
HTTPServerRequest(protocol='http', host='127.0.0.1:8888', method='GET', uri='/status/recent_failed_tasks', version='HTTP/1.1', remote_ip='127.0.0.1', headers={'Connection': 'keep-alive', 'X-Requested-With': 'XMLHttpRequest', 'Accept': '/', 'Accept-Language': 'en-US,en;q=0.8,ru;q=0.6,sk;q=0.4', 'User-Agent': 'Mozilla/5.0 (Macintosh; Intel Mac OS X 10_12_1) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/53.0.2785.116 Safari/537.36', 'Referer': 'http://127.0.0.1:8888/', 'Accept-Encoding': 'gzip, deflate, sdch', 'Host': '127.0.0.1:8888'})
Traceback (most recent call last):
File "/Users/romansalin/.virtualenvs/ereb/lib/python3.5/site-packages/tornado/web.py", line 1443, in _execute
result = method(*self.path_args, **self.path_kwargs)
File "ereb.py", line 135, in get
recent_tasks = self.task_controller.get_recent_history(100)
AttributeError: 'TaskController' object has no attribute 'get_recent_history'

how the hell am I supposed to build this? Add installation notes for collaborators

If you follow readme, you get nothing: running webpack-dev-server will raise error like "webpack-dev-server command is not found", then just webpack will complain that it doesn't have all the required modules, even if I do npm install beforehand.

So, please, explain how to install and get everything to work to all the collaborators willing to work on both front/backend.

lately failed tasks page

It would be very nice to have a page where you can see only failed tasks, with ability to expand the failure message.

Уведомлять если таска работает слишком долго

Нужно отсылать уведомления, когда ереб пытается запустить ещё не отработавшую таску. Например когда есть скрипт, который должен отрабатывать за ничтожно короткое время, и для него настроен запуск каждые 5 минут, — нужно иметь возможность получать уведомления, когда данные скрипт не успевает отработать за отведённое время.

Задача сродни тому, что недавно сделал Тимур, но скорее нацелена на отслеживание деградации. На примере хотеллука: у нас есть таска, которая изначально отрабатывала примерно 10 секунд, мы сделали ей расписание на запуск каждые 5 минут, но спустя 2 месяца после её работа занимала уже около 1 часа, а мы об этом даже не догадывались.

Идеально было бы получать уведомление в чатик после N неудачных попыток запуска, где эта цифра конфигурировалась бы для каждой задачи индивидуально.

Wrap it as a debian package to install with `apt install ereb`

Right now it is too complicated to install ereb as a system service. Not everyone choses to use monit, and ereb "as is" is not starting after system reboot. We can still put a line into crontab, but that's not a true way to run a system service like ereb, which essentially is a substitute for cron.

If possible, please make ereb a Debian package or at least provide a concise tutorial on how to setup ereb to properly start after a reboot.

show current server time

Show "ereb" time in header. Would be a handy feature, because sometimes local time and server time is different and it confuses the user.

Russian language in OS makes js errors

bundle.js:381 Uncaught SyntaxError: Invalid regular expression: /[a-zA-ZР°-СЏРђ-СЏ]+[*]?/: Range out of order in character class

If you switch to English language everything will be ok.

grid view for task list

If you have 200 tasks, it's 200 table rows but only 20x10 grid cells which can really fit on one screen. Then you can make various switches to switch between what's written on a grid cell: average time, number of successive successful runs, other metrics

separate notification settings for each task

I should be able to (besides global) set local notification settings for a specific task. For instance, I have a bunch of critical tasks which in case of failure should notify me via slack. And I have a task of zero importance which is ran every minute and fails periodically (it is considered normal for that task).

Show file content

Is it possible to show a file content on the task page even if it's not *.sh file?
For instance, for "/usr/bin/python /var/www/mydbr/mobile/update_issued_markers.py" command the content of "/var/www/mydbr/mobile/update_issued_markers.py" file should be shown.

Task names containing spaces

If I create a task with a name like "amadeus airlines meta" it will not allow me to open and modify it. Bug, mista!

Task page shows cmd incorrectly

To reproduce, create a task with the following cmd:

/bin/bash -c "export PATH=/usr/local/bin:$PATH && cd /home/aviasales/fuzzy/current && python3 utils/fetch/amadeus_airlines.py --airlines=`python3 utils/fetch/amadeus_iatas.py --endpoint=master` | python3 utils/check_json.py /home/aviasales/fuzzy/shared/tracked_configs/amadeus_airlines_master_extender_store_db.json"

and save it. Then open it and you'll see that it only shows text until first double quote.

"Settings" page

When I install ereb via pip3, I don't want to edit any code to enable Slack notifications. Maybe we should make some "Settings" page where one could enter Slack token and setup all notification-related stuff simply and easily.

This would be a very useful feature!

task grouping feature

Task grouping allows to organize numerous tasks into descriptive groups. Group should have a name, description, and some kind of overall statistics. For instance, we can group all 3-day statistic fetchers into a group "3-day fetchers" and see how many fetchers are always failing, how many failed just last time, and some statistical info like average running time etc.

Better hostname for notifications

Sometimes it's difficult to determine hostname via hostname command.
Should be an explicit parameter like python3 ereb.py --notification_hostname=blabla.com

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.