Cool, but you won't get anywhere without a formal grammar or, at the very least, a reference implementation...
Monitors.txt - lazy webapp monitoring
61–70 of 83 posts
Re: Monitors.txt - lazy webapp monitoring
#62Earlier quoted context omitted.
I'm curious about this -- don't you use APIs which use largely, if not universally, English identifiers? Or is there a version of, say, the .NET Framework where the API itself is written in French, German, or Spanish? Or what language has a custom parser for each language so that you can write keywords ("if", "for", " do ") in your native language?
Believe it or not, VisualBasic (and every built in function) in Excel is translated in localized versions, and of course the English keywords are not kept. It's a mess.
Re: Monitors.txt - lazy webapp monitoring
#63- Put some monitors.txt examples in JSON, YAML, Gherkin and XML up on http://monitorstxt.org to help get the syntax right and satisfy the majority of language preferences. Feedback/contributions welcome, fork on github here: https://github.com/eliotsykes/monitorstxt
- Continue work on prototype monitoring app, with support for the above formats
- Open up the prototype to interested devs
Re: Monitors.txt - lazy webapp monitoring
#64English is an incredibly crappy language for writing tight specs in. The only appeal of english as a programming language is that people who cut big checks speak it. It's completely inappropriate for expressing formal logic. The problem is when people think "Hey, I have a computer science problem. I know, I'll express that problem in English!" and now they have two problems
Re: Monitors.txt - lazy webapp monitoring
#65I don't think I like this idea. * Exposing a "monitors.txt" is a potential security hole that reveals more about your infrastructure than you meant to. * Restricting monitors.txt to a given service (by htaccess IP restriction?) is brittle and gets you out of "write feature"-land and into "do sysadmin"-land, which you're trying to avoid anyhow. * Cucumber is an unnecessary extra layer that doesn't do much besides just…
Monitoring is a very difficult problem when you consider false positives, notifications (repetition, escalation etc), and reporting.
Monitoring isn't just about whether a service is up or down. It's about the quality of that service right now and over time.
Re: Monitors.txt - lazy webapp monitoring
#66I don't think I like this idea. * Exposing a "monitors.txt" is a potential security hole that reveals more about your infrastructure than you meant to. * Restricting monitors.txt to a given service (by htaccess IP restriction?) is brittle and gets you out of "write feature"-land and into "do sysadmin"-land, which you're trying to avoid anyhow. * Cucumber is an unnecessary extra layer that doesn't do much besides just…
monitoring just isn't that difficult of a problem. Monitoring is a very difficult problem when you consider false positives, notifications (repetition, escalation etc), and reporting. Monitoring isn't just about whether a service is up or down. It's about the quality of that service right now and over time.
Re: Monitors.txt - lazy webapp monitoring
#67I don't think I like this idea. * Exposing a "monitors.txt" is a potential security hole that reveals more about your infrastructure than you meant to. * Restricting monitors.txt to a given service (by htaccess IP restriction?) is brittle and gets you out of "write feature"-land and into "do sysadmin"-land, which you're trying to avoid anyhow. * Cucumber is an unnecessary extra layer that doesn't do much besides just…
Exposing a "monitors.txt" is a potential security hole that reveals more about your infrastructure than you meant to. Everything you put in monitors.txt has to be publicly accessibly anyhow. What could is reveal that the actual website doesn't?
Seems to me this just gives potentials hackers a map to the public end points of my most important areas.
Re: Monitors.txt - lazy webapp monitoring
#68And is this presuming a headless browser? There are a lot of poorly-authored documents which blow up if their js can't get certain resources, even though the URLs don't appear in the markup where a scraper would see them. I'm all for having a pure-HTML mode that always works, because that's basic competence, but I'd want my progressive enhancements monitored as well at a lower priority.
Re: Monitors.txt - lazy webapp monitoring
#69Why make it human readable? Especially if you want lots of providers to support it, pick something super easy to parse.. JSON is the obvious choice there: [{ method: "GET", url: "index.html", tests: [ contains: "nyaruka", response_in_ms: 500, status: 200 ] }, { method: "POST", url: "login.html", params: { foo: "bar" } tests: [ "status": 200 ] }]
JSON is harder to read than XML, to my human eyes.
Re: Monitors.txt - lazy webapp monitoring
#70I'd much rather have something akin to an appcache.manifest file: # monitors.txt - see http://monitorstxt.org for more info GET: http://monitors.txt http://otherservice.monitors.txt POST: http://monitors.txt/service q:lalala user:trololol http://monitors.txt/service2 id:250 RESOLVE: monitorstxt.org 207.97.227.245 PERFORMANCE: http://duckduckgo IMO feature testing should be part of your test suite pre-deploy, not the…
Another bit of syntax that I think is missing is something like:
GUAGE:
http://domain/stats/logins 60s
COUNTER: http://domain/stats/logins 60s
AVG: http://domain/stats/logins 24h
Something like this would allow you to setup not only with simple external monitoring systems, but with internal systems like Nagios, Ganglia, ZenOSS, etc.Of course, I do have to agree with many people that I am a bit uneasy PUBLISHING all of this data for all to see.