Added other map reduce for job usage records

git-svn-id: https://svn.d4science.research-infrastructures.eu/gcube/private/luca.frosini/GenerateMapReduceCouchbase@154910 82a268e6-3cf1-43bd-a215-b396298e98cf
This commit is contained in:
Luca Frosini 2017-10-05 13:05:02 +00:00
parent c7797d4886
commit 7678691a18
58 changed files with 1729 additions and 0 deletions

View File

@ -0,0 +1,33 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
var callerQualifier=doc.callerQualifier ? (doc.callerQualifier) : "UNKNOWN";
propertiesKey.push(callerQualifier);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,35 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.consumerId);
propertiesKey.push(doc.host);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,36 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.consumerId);
propertiesKey.push(doc.host);
propertiesKey.push(doc.operationResult);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,37 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.consumerId);
propertiesKey.push(doc.host);
propertiesKey.push(doc.operationResult);
propertiesKey.push(doc.serviceClass);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,38 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.consumerId);
propertiesKey.push(doc.host);
propertiesKey.push(doc.operationResult);
propertiesKey.push(doc.serviceClass);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,37 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.consumerId);
propertiesKey.push(doc.host);
propertiesKey.push(doc.operationResult);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,36 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.consumerId);
propertiesKey.push(doc.host);
propertiesKey.push(doc.serviceClass);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,37 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.consumerId);
propertiesKey.push(doc.host);
propertiesKey.push(doc.serviceClass);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,36 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.consumerId);
propertiesKey.push(doc.host);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,36 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.consumerId);
propertiesKey.push(doc.operationResult);
propertiesKey.push(doc.serviceClass);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,37 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.consumerId);
propertiesKey.push(doc.operationResult);
propertiesKey.push(doc.serviceClass);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,36 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.consumerId);
propertiesKey.push(doc.operationResult);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,35 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.consumerId);
propertiesKey.push(doc.serviceClass);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,36 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.consumerId);
propertiesKey.push(doc.serviceClass);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,35 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.consumerId);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,34 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.host);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,35 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.host);
propertiesKey.push(doc.operationResult);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,36 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.host);
propertiesKey.push(doc.operationResult);
propertiesKey.push(doc.serviceClass);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,37 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.host);
propertiesKey.push(doc.operationResult);
propertiesKey.push(doc.serviceClass);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,36 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.host);
propertiesKey.push(doc.operationResult);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,35 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.host);
propertiesKey.push(doc.serviceClass);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,36 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.host);
propertiesKey.push(doc.serviceClass);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,35 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.host);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,35 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.operationResult);
propertiesKey.push(doc.serviceClass);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,36 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.operationResult);
propertiesKey.push(doc.serviceClass);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,35 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.operationResult);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,34 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.serviceClass);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,35 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.serviceClass);
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}

View File

@ -0,0 +1,34 @@
function(doc,meta) {
if(doc.usageRecordType == "JobUsageRecord" || doc.recordType == "JobUsageRecord"){
if((doc.operationCount && isNaN(Number(doc.operationCount))) || (doc.duration && isNaN(Number(doc.duration)))){
emit([0, "Invalid Value", doc.id], doc);
return;
}
var data = {};
data.operationCount = doc.operationCount ? Number(doc.operationCount) : 1;
data.duration = doc.duration ? Number(doc.duration) : 1;
data.maxInvocationTime = doc.maxInvocationTime ? Number(doc.maxInvocationTime) : data.duration;
data.minInvocationTime = doc.minInvocationTime ? Number(doc.minInvocationTime) : data.duration;
var propertiesKey = [];
propertiesKey.push(doc.serviceName);
var timestamp=Number(doc.creationTime);
var date = new Date(timestamp);
var dataKey = [];
dataKey.push(date.getUTCFullYear());
dataKey.push(date.getUTCMonth()+1);
dataKey.push(date.getUTCDate());
dataKey.push(date.getUTCHours());
dataKey.push(date.getUTCMinutes());
// dataKey.push(date.getUTCSeconds());
// dataKey.push(date.getUTCMilliseconds());
var finalKey = propertiesKey.concat(dataKey);
finalKey.unshift(doc.scope);
emit(finalKey, data);
}
}

View File

@ -0,0 +1,24 @@
function(keys, values, rereduce){
var maxInvocationTime = Number(values[0].maxInvocationTime);
var minInvocationTime = Number(values[0].minInvocationTime);
var total = 0;
var numerator = 0;
for(i=0; i<values.length; i++){
total += Number(values[i].operationCount);
numerator += Number(values[i].operationCount) * Number(values[i].duration);
if(maxInvocationTime<=values[i].maxInvocationTime){
maxInvocationTime = values[i].maxInvocationTime;
}
if(minInvocationTime>=values[i].minInvocationTime){
minInvocationTime = values[i].minInvocationTime;
}
}
ret = {};
ret.operationCount = Number(total);
ret.duration = Number(numerator)/Number(total);
ret.maxInvocationTime = Number(maxInvocationTime);
ret.minInvocationTime = Number(minInvocationTime);
return ret;
}