| @@ 144-175 (lines=32) @@ | ||
| 141 | self.calc = Differential() |
|
| 142 | ||
| 143 | ||
| 144 | def poll(self): |
|
| 145 | """Query Redis for metrics. |
|
| 146 | ||
| 147 | :rtype: ResultSet |
|
| 148 | """ |
|
| 149 | result = plumd.Result("redis") |
|
| 150 | ||
| 151 | stats = self.get_metrics() |
|
| 152 | ts = time.time() |
|
| 153 | name = self.name |
|
| 154 | ||
| 155 | # record gauges |
|
| 156 | for stat in self.gauges: |
|
| 157 | if stat in stats: |
|
| 158 | mname = "{0}.{1}".format(name, stat) |
|
| 159 | result.add(plumd.Float(mname, stats[stat])) |
|
| 160 | ||
| 161 | # record rates |
|
| 162 | for stat in self.rates: |
|
| 163 | if stat in stats: |
|
| 164 | mname = "{0}.{1}".format(name, stat) |
|
| 165 | mval = self.calc.per_second(mname, float(stats[stat]), ts) |
|
| 166 | result.add(plumd.Float(mname, mval)) |
|
| 167 | ||
| 168 | # replication |
|
| 169 | if "slave0" in stats: |
|
| 170 | self.record_slave(stats, result) |
|
| 171 | ||
| 172 | # record db metrics |
|
| 173 | self.record_keys(stats, result) |
|
| 174 | ||
| 175 | return plumd.ResultSet([result]) |
|
| 176 | ||
| 177 | ||
| 178 | def record_keys(self, stats, result): |
|
| @@ 121-145 (lines=25) @@ | ||
| 118 | self.calc = Differential() |
|
| 119 | ||
| 120 | ||
| 121 | def poll(self): |
|
| 122 | """Query memcache for stats. |
|
| 123 | ||
| 124 | :rtype: ResultSet |
|
| 125 | """ |
|
| 126 | result = plumd.Result("memcache") |
|
| 127 | ||
| 128 | name = self.name |
|
| 129 | stats = self.get_stats() |
|
| 130 | ts = time.time() |
|
| 131 | ||
| 132 | # record gauges |
|
| 133 | for stat in self.gauges: |
|
| 134 | if stat in stats: |
|
| 135 | mname = "{0}.{1}".format(name, stat) |
|
| 136 | result.add(plumd.Float(mname, stats[stat])) |
|
| 137 | ||
| 138 | # record rates |
|
| 139 | for stat in self.rates: |
|
| 140 | if stat in stats: |
|
| 141 | mname = "{0}.{1}".format(name, stat) |
|
| 142 | mval = self.calc.per_second(mname, float(stats[stat]), ts) |
|
| 143 | result.add(plumd.Float(mname, mval)) |
|
| 144 | ||
| 145 | return plumd.ResultSet([result]) |
|
| 146 | ||
| 147 | ||
| 148 | def get_stats(self): |
|