rach / pome Goto Github PK
View Code? Open in Web Editor NEWA Postgres Metrics Dashboard
License: Apache License 2.0
A Postgres Metrics Dashboard
License: Apache License 2.0
I did the first version using the built-in http package as I had never used go before.
It's quite limited and it will help to have gzip and others.
So far, I liked http://www.gorillatoolkit.org/ as it's more of library than a framework. Any suggestion are welcomed.
Left side should be earliest and right side oldest data. Maybe link to the refactor in 0.2.0
I never used it yet. It seems to make life easier so I should look into integrate it
As the application keep running the json returned is getting bigger.
There's quite a lot of repetition in the json keys so gzip it should help.
Tried starting it up and got the following error:
2016/01/05 10:33:02 Starting Pome 0.1.0
2016/01/05 10:33:02 Application will be available at http://127.0.0.1:2345
2016/01/05 10:33:02 sql: Scan error on column index 3: converting string "6.55917056e+08" to a int: strconv.ParseInt: parsing "6.55917056e+08": invalid syntax
Could it be because of our use of bigints?
This is be plug back into the react/redux machinery using dispatch or action. I was initially worried about redrawing all the graphs.. It needs to be investigated further
.on("mouseover", (d, i) => {
//this should use action dispatch to update the state
var t = datetimeFormat(new Date(xdata[i] * 1000));
JQuery(React.findDOMNode(that)).find('.bar-value').text(t + " => " + yFormatter(d));
})
.on("mouseout", (d, i) => {
//this should use action dispatch to update the state
JQuery(React.findDOMNode(that)).find('.bar-value').text("");
});
What about adding a dockerfile for deploying this to a server?
i can't connect probably because the url is shorten
$ pome xxxxxxxx:xxxxxxxxxxxxxxxx@ec2-xx-xxx-xxx-xxx.xx-xxxx-x.xxxxxxxx.xxxxxxx.com:5432/xxxxxxxx
2016/01/07 14:03:15 Starting Pome 0.1.1
2016/01/07 14:03:15 Application will be available at http://127.0.0.1:2345
2016/01/07 14:03:15 pq: database "pome xxxxxxxx:[email protected]" does not exist
(anonymized console)
It doesn't tell you which table or index is the most bloated.
I need pass this info and adjust the frontend to display it.
If an existing collectd existing that I understand that some people may want to push data to it
kingpin has option for environment variables
Currently we cannot configure the timing for the different stats.
2016/01/05 11:42:24 Starting Pome 0.1.0
2016/01/05 11:42:24 Application will be available at http://127.0.0.1:2345
2016/01/05 11:42:24 sql: Scan error on column index 3: converting string "1.1198464e+07" to a int: strconv.ParseInt: parsing "1.1198464e+07": invalid syntax
Using version 804786e
All the SQL in query.go
are executed directly. I need to look how to prepare the statements with sqlx
and how to memoize them.
Also doing some testing on it's more efficient.
Currently the Js concatenated file is too big
For more infos, check the PG doc
http://www.postgresql.org/docs/9.4/static/libpq-connect.html#AEN41151
Can be useful to detect issues.
check_prostgres calculate it like this:
https://github.com/bucardo/check_postgres/blob/master/check_postgres.pl#L4208-L4217
Only need some small modification
Right now, it require to call go generate
to see the changes. It really unfriendly but I didn't bother yet to improve it
At the top of my mind they use this format:
user:pwd@host:port/dbname
Right now, changing the web source does nothing if you don't run go-bindata and create a new bindata.go file. I think this is probably a bit confusing to people looking to expand on the project and a bit of a VCS-antipattern. Typically with projects that use generated source code (see protobuf, thrift, etc), there is a "gen" stage that is done before the "build" stage.
We could implement this with a Makefile that builds bindata.go.
Let me know how you feel about this.
Some query should be run when the traffic is at the lowest so it ll be idea to be able control when to run the collection precisely. Right now it's only a number of seconds from the moment that the command start. There is a Go project to support cron-like syntax already https://godoc.org/github.com/robfig/cron
Currently the timing when the different stats are collect is hardcoded to a sensible default (at least I think)
There is a ticket to try to auto-detect if the db is protected via a password (#9) but an easy fix will be to not allow to pass the password in argument and prompt the user to introduce it.
It's currently not set to application/json
Line 31 in 3c140aa
should fix usage or change option name to -P
instead of -p
. because someone may want real -p
for connecting database with custom port.
On a not really active database then it can useful to run analys at some frequency. This has probably some impact so we need to look into that
It should be possible to service static content and request under a different web root then the default /
.
This would simplify setting up the service behind a nginx or Apache2 proxy under different location, e.g. /pome
This due to the fact that d3 picked rounded valued and doesn't well represent as human readable format: kb, mb, ... because ot the 1024 multiplier
A detail but it will be nice to mimic the postgres behavior.
Really not important right now but I adding this as backlog
Ideally I would like to mimic the psql
behavior as possible, so being able to detect that the password is required and prompt the user sounds like the ideal solution
A declarative, efficient, and flexible JavaScript library for building user interfaces.
๐ Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
An Open Source Machine Learning Framework for Everyone
The Web framework for perfectionists with deadlines.
A PHP framework for web artisans
Bring data to life with SVG, Canvas and HTML. ๐๐๐
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
Some thing interesting about web. New door for the world.
A server is a program made to process requests and deliver data to clients.
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
Some thing interesting about visualization, use data art
Some thing interesting about game, make everyone happy.
We are working to build community through open source technology. NB: members must have two-factor auth.
Open source projects and samples from Microsoft.
Google โค๏ธ Open Source for everyone.
Alibaba Open Source for everyone
Data-Driven Documents codes.
China tencent open source team.