Changeset 93ee67631e38d219f26ed5c4cfadb77fe919a653

Show
Ignore:
Timestamp:
04/11/12 18:34:59 (2 years ago)
Author:
neophenix <neophenix@gmail.com>
git-committer:
neophenix <neophenix@gmail.com> 1334169299 -0400
git-parent:

[26d8ac65776ea6f4a2598eada0106298245b9aa1]

git-author:
neophenix <neophenix@gmail.com> 1334169299 -0400
Message:

update redis module to support the new INFO format

Files:

Legend:

Unmodified
Added
Removed
Modified
Copied
Moved
  • src/modules-lua/noit/module/redis.lua

    r8d6f676 r93ee676  
    138138 
    139139  for line in pairs(list) do 
    140     if ( list[line] == "" or list[line] == nil) then 
     140    if ( list[line] == nil) then 
    141141      break 
    142142    end 
    143     kv = string.split(list[line], ":") 
    144  
    145     -- see if this is db* data 
    146     if ( string.find(kv[1], "^db%d+$") ) then 
    147       db_metrics = string.split(kv[2], ",") 
    148       for idx in pairs(db_metrics) do 
     143    if ( list[line] ~= "" and string.sub(list[line], 1, 1) ~= "#" ) then 
     144      kv = string.split(list[line], ":") 
     145 
     146      -- see if this is db* data 
     147      if ( string.find(kv[1], "^db%d+$") ) then 
     148        db_metrics = string.split(kv[2], ",") 
     149        for idx in pairs(db_metrics) do 
     150          count = count + 1 
     151          met = string.split(db_metrics[idx], "=") 
     152          metric_data["metric_name"] = kv[1] .. "`" .. met[1] 
     153          add_check_metric(met[2], check, metric_data) 
     154        end 
     155      elseif ( string.find(kv[1], "^allocation_stats$") ) then 
     156        alloc_metrics = string.split(kv[2], ",") 
     157        for idx in pairs(alloc_metrics) do 
     158          count = count + 1 
     159          met = string.split(alloc_metrics[idx], "=") 
     160          if ( 3 == table.getn(met) ) then 
     161              check.metric_int32("allocation_stats`" .. met[2], met[3]) 
     162          else 
     163              check.metric_int32("allocation_stats`" .. met[1], met[2]) 
     164          end 
     165        end 
     166      else 
    149167        count = count + 1 
    150         met = string.split(db_metrics[idx], "=") 
    151         metric_data["metric_name"] = kv[1] .. "`" .. met[1] 
    152         add_check_metric(met[2], check, metric_data) 
     168        metric_data["metric_name"] = kv[1] 
     169        add_check_metric(kv[2], check, metric_data) 
    153170      end 
    154     elseif ( string.find(kv[1], "^allocation_stats$") ) then 
    155       alloc_metrics = string.split(kv[2], ",") 
    156       for idx in pairs(alloc_metrics) do 
    157         count = count + 1 
    158         met = string.split(alloc_metrics[idx], "=") 
    159         if ( 3 == table.getn(met) ) then 
    160             check.metric_int32("allocation_stats`" .. met[2], met[3]) 
    161         else 
    162             check.metric_int32("allocation_stats`" .. met[1], met[2]) 
    163         end 
    164       end 
    165     else 
    166       count = count + 1 
    167       metric_data["metric_name"] = kv[1] 
    168       add_check_metric(kv[2], check, metric_data) 
    169171    end 
    170172  end