Comments (8)
Thank you for the bug-report, I guess that it takes too long to fetch the logfiles from your cluster.
It may help if you increase the timeout for fetching the compaction log-files by increasing the value of 'compactions.logfile-fetch-timeout-in-seconds' in conf/application.conf.
I will try to add a more helpful error message and to increase the default timeout.
from hannibal.
I changed the default timeout to 30 seconds and hope that solves your issues. But I have no idea about your browser showing "'done with errors' and a blank page". Can you write back whether that still happens?
from hannibal.
increased the timeout. the exception still appears. btw - it could be that the browser errors are unrelated. do you want me to open a new, separate issue?
Webpage error details
User Agent: Mozilla/4.0 (compatible; MSIE 8.0; Windows NT 6.1; Trident/4.0; SLCC2; .NET CLR 2.0.50727; .NET CLR 3.5.30729; .NET CLR 3.0.30729; Media Center PC 6.0; InfoPath.3; .NET4.0C; .NET4.0E)
Timestamp: Fri, 14 Dec 2012 17:34:57 UTC
Message: Object doesn't support this property or method
Line: 3078
Char: 3
Code: 0
URI: http://localhost:9000/assets/javascripts/d3.v2.js
Message: Object doesn't support this property or method
Line: 396
Char: 2
Code: 0
URI: http://localhost:9000/assets/javascripts/rickshaw.js
from hannibal.
It seems from the last comments that the timeout on fetching the region server logs is gone but I'm still commenting here to give some additional background from my experience with this.
The 5 seconds default timeout was very aggressive for us since our log max file size is 200 MB. Getting 200 MB under 5 seconds from the host I was running hannibal on was just not feasible. The real problem though is that such huge files will always take a very long time to download. It's also a problem with the memory consomption since the content of the entire log file is kept in memory before parsing. Streaming the content would really help with that but there was a lower-hanging fruit which is just being a bit smarter in fetching logs.
Pull request #7 is my solution to this problem. The log file is retrieved with a range to start from where the last fetch ended. The initial fetch going back 1024 KB (configurable) prior to the current end of the log. With this code, I've been able to remove my heap size setting of 2048 MB and keep the default value without OutOfMemory errors. Also, the 5 seconds timeout was sufficient for me since in most cases, a fetch would be at most 1024 KB (unless logs produce more than 1 MB per 5 minutes).
from hannibal.
That's true and I am very happy with your solution - maybe we can also reduce the timeout back to 5 seconds.
from hannibal.
I'm actually having second thoughts and I'm not entirely sure if my testing on Friday was done using 5 or 30 seconds. In any case, each log fetch felt like less than 5 seconds.
I will check again tomorrow though but I think it would actually make more sense to have the timeout as lenient as it can be to be able to fetch logs for all region servers inside a refresh interval (which I made more agressive in the pull request #7).
from hannibal.
The fetching of logs is definitely faster now. I'm running this against a 20 nodes cluster and the compaction metrics update takes 8700 ms, well under 5 seconds for each region server.
from hannibal.
Ranlo It seams that you are using Internet Explorer 8, which doesn't support SVG. The graphs from Hannibal are rendered with SVG. Could you try another browser?
from hannibal.
Related Issues (20)
- Easy way to deploy hannibal HOT 4
- [RFE] Show "Region History" for whole cluster HOT 2
- can not load page: MasterNotRunningException HOT 26
- Region view doesn't show correct region when start/end keys are non-printable characters HOT 3
- Does not work for large clusters HOT 4
- Value too long for column HOT 2
- Make retention period for metrics configurable ... HOT 1
- Installation instructions in README.markdown links to old version HOT 3
- compaction history chart duration HOT 2
- HBase 0.96 support HOT 5
- Update Compaction Patterns for HBase 0.96 ...
- Compaction View should be disabled when there is no data
- table list panel should be draggable in compaction view HOT 1
- Configurable timezone in Rickshaw chart HOT 1
- Display number of requests per region
- JdbcSQLException: Timeout trying to lock table "METRIC" when visiting /compactions
- Handle different log file format across region servers
- Hannibal with HBase 1.0.0 version HOT 12
- bind port failed, port 9000 is in used already HOT 1
- Link is broken
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
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.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from hannibal.