in lib/statistics.js [51:85]
var register = function(name, displayName, type, unit, source, destination) {
if (metrics.hasOwnProperty(name)) {
return;
}
var dimensions = [];
if (source) {
if (destination) {
// Aggregation per source, destination and function
dimensions = [{ Name: "Source", Value: source }, { Name: "Destination", Value: destination }, { Name: "Function", Value: process.env.AWS_LAMBDA_FUNCTION_NAME }];
} else {
// Aggregation per source and function
dimensions = [{ Name: "Source", Value: source }, { Name: "Function", Value: process.env.AWS_LAMBDA_FUNCTION_NAME }];
}
} else if (destination) {
// Aggregation per destination and function
dimensions = [{ Name: "Destination", Value: destination }, { Name: "Function", Value: process.env.AWS_LAMBDA_FUNCTION_NAME }];
} else {
// Aggregation per function
dimensions = [{ Name: "Function", Value: process.env.AWS_LAMBDA_FUNCTION_NAME }];
}
if(type == "counter") {
metrics[name] = { name: displayName, unit: unit, dimensions: dimensions, type: type };
entries[name] = 0;
}
else if(type == "stats") {
metrics[name] = { name: displayName, unit: unit, dimensions: dimensions, type: type };
entries[name] = { Minimum: 0, Maximum: 0, SampleCount: 0, Sum: 0 };
}
else {
console.error("Invalid metric type '" + type + "', allowed values are 'counter' and 'stats'");
}
}