casseo 0.1.2 → 0.1.3
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- data/README.md +4 -5
- data/lib/casseo/dashboard.rb +11 -2
- data/lib/casseo/version.rb +1 -1
- metadata +1 -1
data/README.md
CHANGED
@@ -1,7 +1,7 @@
|
|
1
1
|
Casseo
|
2
2
|
======
|
3
3
|
|
4
|
-
A Graphite dashboard viewable without ever leaving the command line. Configuration and concept very similar to [Tasseo](tasseo).
|
4
|
+
A Graphite dashboard viewable without ever leaving the command line. Configuration and concept very similar to [Tasseo](https://github.com/obfuscurity/tasseo).
|
5
5
|
|
6
6
|
Install via Rubygems:
|
7
7
|
|
@@ -24,7 +24,7 @@ Casseo expects to be able to find your Graphite credentials at `~/.casseorc`:
|
|
24
24
|
|
25
25
|
Other allowed configuration options are:
|
26
26
|
|
27
|
-
* `compressed_chart:` whether to include a space between chart symbols (default: false)
|
27
|
+
* `compressed_chart:` whether to include a space between chart symbols (default: false); see also `c` shortcut
|
28
28
|
* `dashboard_default:` name of the dashboard to load if none is specified (default: home)
|
29
29
|
* `decimal_precision:` floating point precision to show (default: 1); see also `p` shortcut
|
30
30
|
* `interval:` Graphite update interval in seconds (default: 2)
|
@@ -67,9 +67,10 @@ Key Bindings
|
|
67
67
|
|
68
68
|
For now, there are no options on key bindings. Here's what you get:
|
69
69
|
|
70
|
+
* `c` toggle compressed chart
|
70
71
|
* `j` page down
|
71
72
|
* `k` page up
|
72
|
-
* `m`
|
73
|
+
* `m` toggle max value column
|
73
74
|
* `p` show more floating point precision
|
74
75
|
* `q` quit
|
75
76
|
* `1` 5 minute range
|
@@ -77,5 +78,3 @@ For now, there are no options on key bindings. Here's what you get:
|
|
77
78
|
* `3` 3 hour range
|
78
79
|
* `4` 24 hour range
|
79
80
|
* `5` 7 day range
|
80
|
-
|
81
|
-
[tasseo]: https://github.com/obfuscurity/tasseo
|
data/lib/casseo/dashboard.rb
CHANGED
@@ -8,6 +8,7 @@ module Casseo
|
|
8
8
|
|
9
9
|
def initialize
|
10
10
|
@confs = []
|
11
|
+
@compressed_chart = Config.compressed_chart
|
11
12
|
@data = nil
|
12
13
|
@decimal_precision = Config.decimal_precision
|
13
14
|
@page = 0
|
@@ -86,6 +87,7 @@ module Casseo
|
|
86
87
|
|
87
88
|
def handle_key_presses
|
88
89
|
loop do
|
90
|
+
new_compressed_chart = nil
|
89
91
|
new_decimal_precision = nil
|
90
92
|
new_page = nil
|
91
93
|
new_period = nil
|
@@ -93,6 +95,7 @@ module Casseo
|
|
93
95
|
|
94
96
|
case Curses.getch
|
95
97
|
when Curses::KEY_RESIZE then show
|
98
|
+
when ?c then new_compressed_chart = !@compressed_chart
|
96
99
|
when ?j then new_page = clamp(@page + 1, 0, num_pages)
|
97
100
|
when ?k then new_page = clamp(@page - 1, 0, num_pages)
|
98
101
|
when ?m then new_show_max = !@show_max
|
@@ -106,6 +109,12 @@ module Casseo
|
|
106
109
|
when ?5 then new_period = 60 * 24 * 7
|
107
110
|
end
|
108
111
|
|
112
|
+
if new_compressed_chart != nil
|
113
|
+
@compressed_chart = new_compressed_chart
|
114
|
+
Curses.clear
|
115
|
+
show
|
116
|
+
end
|
117
|
+
|
109
118
|
if new_page && new_page != @page
|
110
119
|
@page = new_page
|
111
120
|
Curses.clear
|
@@ -173,14 +182,14 @@ module Casseo
|
|
173
182
|
if max && max > 0
|
174
183
|
num_samples = Curses.cols - str.length
|
175
184
|
(1..num_samples).each do |i|
|
176
|
-
next if i % 2 == 0 unless
|
185
|
+
next if i % 2 == 0 unless @compressed_chart
|
177
186
|
index = ((i.to_f / num_samples.to_f) * data_points.count.to_f).to_i - 1
|
178
187
|
sample = data_points[index][0]
|
179
188
|
sample = 0.0 unless sample
|
180
189
|
|
181
190
|
index = (sample / max * CHART_CHARS.count).to_i - 1
|
182
191
|
chart += CHART_CHARS[index]
|
183
|
-
chart += " " unless
|
192
|
+
chart += " " unless @compressed_chart
|
184
193
|
end
|
185
194
|
end
|
186
195
|
|
data/lib/casseo/version.rb
CHANGED