Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add Application Monitoring #4

Open
GochoMugo opened this issue Mar 19, 2016 · 10 comments
Open

Add Application Monitoring #4

GochoMugo opened this issue Mar 19, 2016 · 10 comments
Milestone

Comments

@GochoMugo
Copy link
Member

Using a service, such as LogEntries, we shall be able to monitor the application. The main purpose would be receiving alerts when errors occur in the application, or when the application goes for some unexpected reason.

@GochoMugo GochoMugo added this to the v1 milestone Mar 19, 2016
GochoMugo added a commit that referenced this issue Mar 19, 2016
The added logging strategy uses `stdout` and `stderr` of the
application's process.

issue: #4
@GochoMugo
Copy link
Member Author

Using a LogEntries agent running alongside the application, it "follows" the log pushing changes to the app's dashboard. This will have to work for now (we do not have the alerts feature)

@BransonGitomeh
Copy link

also you can make it log every request it recieves and a timestamp to keep record of how much time each request took, then you can know how much load your server is receiving, and how it's performing against that.

@BransonGitomeh
Copy link

this can be done in async, so it doesn't block the main thread of the application logic response process

normal middle ware, then call next () before it's done saving it whatever other idea you may have

@GochoMugo
Copy link
Member Author

I have not added request logging (only doing error logging for now) but it would be nice to have metrics visualized on a dashboard.

Currently, the mechanism used is to have the application log to stdout, redirected to a log file, that a logentries agent follows, pushing any changes to the remote server. This implementation is quite good as it only uses standard output rather than some fancy method, bloating the source code.

However, using statsd is efficient for gathering metrics and would definitely want to proceed in that direction, with regards to request logging. It allows more accurate metrics, transmitted over UDP.

@GochoMugo GochoMugo reopened this Apr 3, 2016
@GochoMugo
Copy link
Member Author

We could allow sharing this data, from the monitoring. It can be used in trend analysis, etc...

@BransonGitomeh
Copy link

generally IMO the ammount of logging is ussually based on the ammount of data you have flowing through the app, if its a lot of data, i log everything so incase i get that error i can trace back and see what caused it, there are also things like data inconsistency that may occur that may need you to traceback things, but in this case i think logging errors is ok, but logging everything is not bloating code, its monitoring your code... :-)

@GochoMugo
Copy link
Member Author

I agree we should log everything.

I meant that the mechanism used to log such data should not add complexity to the source code.

We will probably use the graphite-statsd stack for extensive monitoring in the future. We have added to the wishlist 😄

@BransonGitomeh
Copy link

:-) awesome looking forward to we will do this

@GochoMugo
Copy link
Member Author

I will notify you when I start working on the feature. 👍

@BransonGitomeh
Copy link

👍

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants