Code Monkey home page Code Monkey logo

ramona's People

Contributors

ateska avatar fabaff avatar jstastny avatar zadazorg 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  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  avatar  avatar  avatar

ramona's Issues

New Ramona command "sendmail"

Mainly to test SMTP notification config but maybe also for other admin purposes.

Should support targeting (now, daily, weekly, etc.)

Inconsistent use of 'receiver' in ramona:notification subsystem

Value of config.get('ramona:notify', 'receiver') is used in:

  • sendmail.py (just to construct value from configuration)
  • notify.py

These two uses are not aligned and maybe even in conflict (sendmail.py allows to specify list of receivers).

This has to be united, sendmail.py should be dominant provider of parsed values. notify.py should read that from sendmail.py.

Persistent stash of email notifications

Currently, the stash is only kept in memory and is therefore lost once Ramona process is restarted. It should be persisted into a file to avoid loosing email notifications.

Flush log output

It happens that logs managed by Ramona obviously stops writing in a middle of a text and that some of the log output has not been flushed. Logs are not complete until next buffer is written to output. Please enable more frequent flushing.

Configuration reload

Currently, it is not possible to reload Ramona configuration without stopping Ramona Server (and processes controlled by Ramona). Please make a command for reload config.

Add name of the process into

-=[ EXITED on 2013-09-22 19:03:22 0 ]=-
-=[ STARTING by Ramona on 2013-09-22 19:03:22 ]=-

into

-=[ foobarapp EXITED on 2013-09-22 19:03:22 0 ]=-
-=[ foobarapp STARTING by Ramona on 2013-09-22 19:03:22 ]=-

HTTP frontend

eventual HTTP frontend is subprocess using standard socket API to communicate with daemon

Enhance web console to update page online (push)

Web console is now refreshing itself in pre-defined time intervals. This can be even enhanced (with graceful degradation to current behaviour) by utilising some modern 'push' or 'comet' approaches, where server is pro-actively notifying browser about changes in application states.

Target of this enhancement is to enhance web console page to be 'live' using 'push' notifications from server.

Consider using websockets or other features of HTML5.

Mailing issues to admin

Ramona server should be able to send emails (or launch arbitrary command) in case of:

  • start/stop sequence failure
  • watchdog issue
  • finding keyword (e.g. error) in output streams
  • ... (maybe other cases)

Emails can be eventually aggregated to avoid flooding/spaming admin - e.g. send collected warnings from logs just once per day.

Windows install problems with python 2.7.3

Command python setup.py egg_info failed with error code 1 in C:...\pyev

Exception information:
Traceback (most recent call last):
File "C:\Python27\lib\site-packages\pip-1.1-py2.7.egg\pip\basecommand.py", line 104, in main
status = self.run(options, args)
File "C:\Python27\lib\site-packages\pip-1.1-py2.7.egg\pip\commands\install.py", line 245, in run
requirement_set.prepare_files(finder, force_root_egg_info=self.bundle, bundle=self.bundle)
File "C:\Python27\lib\site-packages\pip-1.1-py2.7.egg\pip\req.py", line 1009, in prepare_files
req_to_install.run_egg_info()
File "C:\Python27\lib\site-packages\pip-1.1-py2.7.egg\pip\req.py", line 225, in run_egg_info
command_desc='python setup.py egg_info')
File "C:\Python27\lib\site-packages\pip-1.1-py2.7.egg\pip__init__.py", line 256, in call_subproce
ss
% (command_desc, proc.returncode, cwd))
InstallationError: Command python setup.py egg_info failed with error code 1 in C:...\pyev

How do I stop Ramona or load a new configuration?

I've just started looking at Ramona, and one of the first things I wanted to do -- after getting a service up and running -- was enable the http frontend to see what that looked like.

I wasn't able to find any way of loading a new configuration into Ramona. There doesn't appear to be any sort of reload command, and trying the typical kill -HUP solution simple caused Ramona to exit, while leaving my service running (which of course prevented Ramona from subsequently starting it up until I killed it manually).

I also wasn't able to figure out how to cause the Ramona server to exit, other than by running ps, looking for the ramona server, and then kill it by pid.

Document new notification features

New command 'notify'
New notifications (program state -> FATAL)
New configuration options:

  • global logscan
  • program state change notification config [DONE]

Disappearing log rotation issue

Ramona currently used file size based log rotation. This can however lead to situation when log file is flooded, rotated and deleted very quickly (maybe using intentional attack).

Possible resolution:

  • prevent deletion of log files that 'too young'
  • send email to admin
  • ...

Global configuration of log scanner

In addition to [program:...] logscan_stdout and logscan_stderr

in [ramona:notifications]
logscan=...
logscan_stdout=...
logscan_stderr=...

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.