You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@ambari.apache.org by ol...@apache.org on 2016/04/25 17:14:37 UTC
[2/9] ambari git commit: AMBARI-16034. Incremental changes to
LogSearch to bring it up to date in the trunk (Dharmesh Makwana via oleewere)
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dashboard/BubbleGraphTableLayoutView.js
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dashboard/BubbleGraphTableLayoutView.js b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dashboard/BubbleGraphTableLayoutView.js
index 96eea8d..1dd6bc7 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dashboard/BubbleGraphTableLayoutView.js
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dashboard/BubbleGraphTableLayoutView.js
@@ -93,7 +93,7 @@ define(['require',
this.collection = new VLogList([], {
state: {
firstPage: 0,
- pageSize: 50
+ pageSize: 25
}
});
this.collection.url = Globals.baseURL + "dashboard/solr/logs_search";
@@ -108,7 +108,7 @@ define(['require',
this.listenTo(this.collection, "backgrid:refresh",function(){
$(".contextMenuBody [data-id='F']").show();
$(".contextMenuBody").hide();
- this.$("#loaderGraph").hide();
+ //this.$("#loaderGraph").hide();
this.$(".loader").hide();
//this.ui.find.trigger("keyup");
// if (this.quickHelp)
@@ -170,7 +170,7 @@ define(['require',
},this);
},
fetchAllTogether : function(value){
- this.$("#loaderGraph").show();
+ //this.$("#loaderGraph").show();
this.fetchTableData(value);
_.extend(this.graphParams,value);
//this.fetchGraphData(this.graphParams);
@@ -431,7 +431,17 @@ define(['require',
fetchTableData : function(params){
var that = this;
$.extend(this.collection.queryParams,params);
- this.collection.getFirstPage({reset:true});
+ this.collection.getFirstPage({
+ reset:true,
+ beforeSend : function(){
+ that.$("#loaderGraph").show();
+ that.$(".loader").show();
+ },
+ complete : function(){
+ that.$("#loaderGraph").hide();
+ that.$(".loader").hide();
+ }
+ });
},
fetchTableCollection : function(queryParams, param){
var that = this;
@@ -440,12 +450,17 @@ define(['require',
reset:true,
beforeSend : function(){
that.$("#loaderGraph").show();
- }
+ that.$(".loader").show();
+ },
+ complete : function(){
+ that.$("#loaderGraph").hide();
+ that.$(".loader").hide();
+ }
},param));
},
fetchGraphData : function(params){
var that = this;
- that.$("#loaderGraph").show();
+ //that.$("#loaderGraph").show();
that.$(".loader").show();
this.graphModel.fetch({
dataType:"json",
@@ -456,7 +471,7 @@ define(['require',
error : function(){
},
complete : function(){
- that.$("#loaderGraph").hide();
+ //that.$("#loaderGraph").hide();
that.$(".loader").hide();
}
});
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dashboard/HostListView.js
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dashboard/HostListView.js b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dashboard/HostListView.js
index 6c9b224..9c426f5 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dashboard/HostListView.js
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dashboard/HostListView.js
@@ -279,8 +279,7 @@ define(['require',
}
var data = this.getCheckedHierarchyData();
- console.log(data);
- this.vent.trigger("tree:search",{treeParams : JSON.stringify(data)});
+ this.vent.trigger("tree:search",{treeParams : JSON.stringify(_.pluck(data,"h"))});
},
getCheckedHierarchyData : function(){
var data=[];
@@ -305,7 +304,7 @@ define(['require',
this.$('.tree input[type="checkbox"]').prop({"checked":false,"indeterminate":false});
var data = this.getCheckedHierarchyData();
this.params.treeParams = _.extend({},data);
- this.vent.trigger("tree:search",{treeParams : JSON.stringify(data)});
+ this.vent.trigger("tree:search",{treeParams : JSON.stringify(_.pluck(data,"h"))});
},
onSearchHostClick : function(e){
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dialog/SaveSearchFilterView.js
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dialog/SaveSearchFilterView.js b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dialog/SaveSearchFilterView.js
index 33cd400..2ef2f94 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dialog/SaveSearchFilterView.js
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/dialog/SaveSearchFilterView.js
@@ -80,7 +80,9 @@ define(['require',
that = this;
_.each(this.params, function(value, key) {
- if ((key != "from" && value != "" && key != "to" && key != "bundleId" && key != "start_time" && key != "end_time" && key != "q" && key != "unit" && key != "query" && key != "type" && key != "time" && key != "dateRangeLabel" && key != "advanceSearch")) {
+ if ((key != "from" && value != "" && key != "to" && key != "bundleId" && key != "start_time" &&
+ key != "end_time" && key != "q" && key != "unit" && key != "query" && key != "type" &&
+ key != "time" && key != "dateRangeLabel" && key != "advanceSearch" && !_.isUndefined(Globals.paramsNameMapping[key]) )) {
tableSting += '<tr class="' + key + '"><td>' + Globals.paramsNameMapping[key].label + '</td><td>' + (that.createInnerSpan(key)) + '</td><tr>'
}
})
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/filter/CreateLogfeederFilterView.js
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/filter/CreateLogfeederFilterView.js b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/filter/CreateLogfeederFilterView.js
index 611a51e..2560103 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/filter/CreateLogfeederFilterView.js
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/filter/CreateLogfeederFilterView.js
@@ -49,6 +49,10 @@ define(['require',
events: function() {
var events = {};
events["click [data-override]"] = 'onDataOverrideClick';
+ events["click [data-value]"] = 'onLogLevelHeaderClick';
+ events["click #filterContent input[type='checkbox']"] = 'onAnyCheckboxClick';
+ events["click .overrideRow a"] = 'onEditHost';
+
return events;
},
@@ -97,8 +101,7 @@ define(['require',
var that = this;
// this.setupSelect2Fields(this.levelCollection, "type", "type", "levelSelect2", 'Select Level');
- $.when(this.hostList.fetch({ reset: true }), this.componentsList.fetch({ reset: true }), this.model.fetch({})).done(function(c1, c2, m1) {
-
+ $.when(this.hostList.fetch({ reset: true }), this.componentsList.fetch({ reset: true }), this.model.fetch({})).then(function(c1, c2, m1) {
// if (!_.isUndefined(that.model.get('components'))) {
// that.ui.componentSelect2.select2('val', that.model.get('components'));
// }
@@ -108,7 +111,7 @@ define(['require',
// if (!_.isUndefined(that.model.get('levels'))) {
// that.ui.levelSelect2.select2('val', that.model.get('levels'));
// }
- that.ui.loader.hide();
+ that.hideLoading();
that.trigger("toggle:okBtn",true);
//that.dataLevels = [];
@@ -118,14 +121,24 @@ define(['require',
//that.dataList = _.pluck(that.componentsList.models, 'attributes');
that.renderComponents();
that.populateValues();
+ },function(error){
+ that.hideLoading();
+ Utils.notifyError({
+ content: "There is some issues on server, Please try again later."
+ });
+ that.trigger("closeDialog");
});
},
+ hideLoading : function(){
+ this.ui.loader.hide();
+ },
renderComponents : function(){
var that =this;
_.each(that.componentsList.models, function(model){
- var levels='<td align="left">'+model.get("type")+'<span class="pull-right"><small><i>Override</i></small> <input data-override type="checkbox" data-name='+model.get("type")+'></span></td>';
- levels += that.getLevelForComponent(model.get("type"),true);
- var html = '<tr data-component="'+model.get("type")+'">'+levels+'</tr>';
+ var levels='<td align="left">'+model.get("type")+'</td>';
+ var override = '<td class="text-left"><span class="pull-left"><!--small><i>Override</i></small--> <input data-override type="checkbox" data-name='+model.get("type")+'></span></td>';
+ levels += override + that.getLevelForComponent(model.get("type"),false);
+ var html = '<tr class="overrideSpacer"></tr><tr class="componentRow borderShow" data-component="'+model.get("type")+'">'+levels+'</tr><tr></tr>';
that.ui.filterContent.append(html);
});
},
@@ -135,6 +148,7 @@ define(['require',
var components = this.model.get("filter");
_.each(components,function(value,key){
var obj = components[key];
+
if((_.isArray(obj.overrideLevels) && obj.overrideLevels.length) ||
(_.isArray(obj.hosts) && obj.hosts.length) || obj.expiryTime){
var $el = that.$("input[data-name='"+key+"']").filter("[data-override]");
@@ -150,6 +164,7 @@ define(['require',
var $checkbox = $override.find("input[data-id='"+obj.overrideLevels[z]+"']");
if(! $checkbox.is(":checked")){
$checkbox.prop("checked",true);
+ // that.showHostSelect2(key);
}
}
}
@@ -160,15 +175,75 @@ define(['require',
var dateObj = Utils.dateUtil.getMomentObject(obj.expiryTime);
that.$("[data-date='"+key+"']").data('daterangepicker').setStartDate(dateObj);
that.$("[data-date='"+key+"']").val(dateObj.format("MM/DD/YYYY HH:mm"));
+ that.showExpiry(key)
}
//setting hosts
if(_.isArray(obj.hosts)){
if(obj.hosts.length){
that.$("[data-host='"+key+"']").select2("val",obj.hosts);
+ that.showHostSelect2(key);
}
}
+ //setting default values
+ if(obj.defaultLevels && _.isArray(obj.defaultLevels) && obj.defaultLevels.length){
+ var $default = that.$("tr[data-component='"+key+"']");
+ if($default.length){
+ for(var z=0; z<obj.defaultLevels.length; z++){
+ var $checkbox = $default.find("input[data-id='"+obj.defaultLevels[z]+"']");
+ if(! $checkbox.is(":checked")){
+ $checkbox.prop("checked",true);
+ }
+ }
+ }
+ }
});
}
+ //set check all value
+ _.each(this.levelCollection.models,function(model){
+ that.setCheckAllValue(model.get("type"));
+ });
+
+ },
+ onAnyCheckboxClick : function(e){
+ var $el = $(e.currentTarget);
+ this.setCheckAllValue($el.data("id"));
+ },
+ onEditHost : function(e){
+ var $el = $(e.currentTarget);
+ $el.hide();
+ if($el.data("type") == "host"){
+ this.showHostSelect2($el.data("component"));
+ }else{
+ this.showExpiry($el.data("component"));
+ }
+ },
+ hideHostSelect2 : function(forComponent){
+ this.ui[forComponent].siblings(".select2-container").hide();
+ this.$("a[data-component='"+forComponent+"'][data-type='host']").show();
+ this.$('i.hostDown[data-component="'+forComponent+'"]').show();
+ },
+ showHostSelect2 : function(forComponent){
+ this.ui[forComponent].siblings(".select2-container").show();
+ this.$("a[data-component='"+forComponent+"'][data-type='host']").hide();
+ this.$('i.hostDown[data-component="'+forComponent+'"]').hide();
+ },
+ showExpiry : function(forComponent){
+ this.$("[data-date='"+forComponent+"']").show();
+ this.$("a[data-component='"+forComponent+"'][data-type='expiry']").hide();
+ },
+ hideExpiry : function(forComponent){
+ this.$("[data-date='"+forComponent+"']").hide();
+ this.$("a[data-component='"+forComponent+"'][data-type='expiry']").show();
+ },
+ setCheckAllValue : function(type){
+ var that = this;
+ if(! type)
+ return
+ if(that.$("[data-id='"+type+"']:checked").length == that.$("[data-id='"+type+"']").length){
+ that.$("[data-value='"+type+"']").prop("checked",true);
+ }else{
+ that.$("[data-value='"+type+"']").prop("checked",false);
+ }
},
getLevelForComponent : function(type,checked){
var html="";
@@ -181,19 +256,35 @@ define(['require',
var $el = $(e.currentTarget);
if(e.currentTarget.checked){
this.addOverrideRow($el.data("name"));
+ this.$('tr[data-component="'+$el.data("name")+'"]').removeClass('borderShow ');
+ this.$('tr[data-component="'+$el.data("name")+'"]').addClass('bgHighlight ');
}else{
this.removeOverrideRow($el.data("name"));
+ this.$('tr[data-component="'+$el.data("name")+'"]').addClass('bgHighlight borderShow ');
+ this.$('tr[data-component="'+$el.data("name")+'"]').removeClass('bgHighlight ');
+ }
+ },
+ onLogLevelHeaderClick : function(e){
+ var $el = $(e.currentTarget);
+ if(e.currentTarget.checked){
+ this.$("[data-id='"+$el.data("value")+"']").prop("checked",true);
+ }else{
+ this.$("[data-id='"+$el.data("value")+"']").prop("checked",false);
}
},
addOverrideRow : function(forComponent){
- var $el = this.ui.filterContent.find("tr[data-component='"+forComponent+"']");
+ var $el = this.ui.filterContent.find("tr[data-component='"+forComponent+"']"),textForHost = "Click here to apply on specific host",
+ textForExpiry="Select Expiry Date";
if($el.length){
- var html = "<tr class='overrideRow "+forComponent+"'><td> </td>"+this.getLevelForComponent($el.data("component"),false)+"</tr>";
- html += "<tr class='overrideRow "+forComponent+"'><td> </td><td colspan='3'><input class='datepickerFilter' data-date='"+forComponent+"'></td>" +
- "<td colspan='3'><div ><input data-host='"+forComponent+"' type='hidden' /></div></td></tr>"
+ var html = "<tr class='overrideRow bgHighlight "+forComponent+"'><td class='text-left'><i data-component='"+forComponent+"' class='fa fa-level-down hostDown' aria-hidden='true'></i><a href='javascript:void(0);' data-type='host' data-component='"+forComponent+"'>"+textForHost+"</a><input data-host='"+forComponent+"' type='hidden' /></td>" +
+ "<td class='text-left'><a href='javascript:void(0);' data-type='expiry' data-component='"+forComponent+"'>"+textForExpiry+"</a>" +
+ "<input class='datepickerFilter' data-date='"+forComponent+"'></td>"+this.getLevelForComponent($el.data("component"),false)+"</tr>";
+ //html += "<tr class='overrideRow "+forComponent+"'><td> </td><td> </td><td colspan='3'><input class='datepickerFilter' data-date='"+forComponent+"'></td>" +
+ // "<td colspan='3'><div ><input data-host='"+forComponent+"' type='hidden' /></div></td></tr>"
$el.after(html);
this.ui[forComponent] = this.$("[data-host='"+forComponent+"']");
this.setupSelect2Fields(this.hostList, "host", 'host', forComponent, 'Select Host', 'hostBoolean');
+ this.hideHostSelect2(forComponent);
this.$("[data-date='"+forComponent+"']").daterangepicker({
singleDatePicker: true,
showDropdowns: true,
@@ -208,6 +299,7 @@ define(['require',
// "timePickerIncrement": 1,
"timePicker24Hour": true,
});
+ this.hideExpiry(forComponent);
}
},
removeOverrideRow : function(foComponent){
@@ -252,7 +344,6 @@ define(['require',
expiryTime : (date && date.startDate) ? date.startDate.toJSON() : ""
};
});
- console.log(obj);
return (obj);
},
getOverideValues : function(ofComponent){
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/tabs/LogFileView.js
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/tabs/LogFileView.js b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/tabs/LogFileView.js
index 3abfc8d..e8cbba6 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/tabs/LogFileView.js
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/tabs/LogFileView.js
@@ -96,7 +96,7 @@ define(['require',
this.logFileCollection = new VLogList([], {
state: {
firstPage: 0,
- pageSize: 50
+ pageSize: 25
}
});
this.logFileCollection.url = Globals.baseURL + "dashboard/solr/logs_search";
@@ -620,7 +620,7 @@ define(['require',
this.RLogFileTable.currentView.$el.find(".logMessage").highlight(selection.toString().trim(), true, e.currentTarget);
this.ui.contextMenu.show();
this.ui.contextMenu.css({
- 'top': e.pageY - 88,
+ 'top': e.pageY - 140,
'left': e.pageX
});
} else {
@@ -636,7 +636,11 @@ define(['require',
this.ui.find.val(this.selectionText);
this.ui.find.trigger("keyup");
this.ui.find.focus();
- } else {
+ }else if(type === "IA" || type === "EA"){
+ this.vent.trigger("toggle:facet",{viewName:((type === "IA") ? "include" : "exclude") +"ServiceColumns",
+ key:Globals.serviceLogsColumns["log_message"],value:"*"+this.selectionText+"*"});
+ }
+ else {
//this.vent.trigger("add:include:exclude",{type:type,value:this.selectionText});
this.vent.trigger("toggle:facet", { viewName: ((type === "I") ? "include" : "exclude") + "ServiceColumns", key: Globals.serviceLogsColumns["log_message"], value: this.selectionText });
}
@@ -778,7 +782,8 @@ define(['require',
error: function(col, response, errorThrown) {
that.resetFindParams();
if (!!errorThrown.xhr.getAllResponseHeaders()) {
- Utils.notifyInfo({ content: "Keyword '" + val + "' not found in " + (keywordType == 1 ? "next" : "previous") + " page !" });
+ // Utils.notifyInfo({ content: "Keyword '" + val + "' not found in " + (keywordType == 1 ? "next" : "previous") + " page !" });
+ that.ui.clearSearch.css({ 'right': 82 + 'px' });
}
},
complete: function() {
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/tabs/TreeView.js
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/tabs/TreeView.js b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/tabs/TreeView.js
index d2bcd3b..2918606 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/tabs/TreeView.js
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/tabs/TreeView.js
@@ -302,7 +302,6 @@ define(['require',
}
var data = this.getCheckedHierarchyData();
- console.log(data);
this.vent.trigger("tree:search",{treeParams : JSON.stringify(data)});
},
onNewTabIconClick : function(e){
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/troubleshoot/TroubleShootLayoutView.js
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/troubleshoot/TroubleShootLayoutView.js b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/troubleshoot/TroubleShootLayoutView.js
index 58b6707..892bc57 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/troubleshoot/TroubleShootLayoutView.js
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/scripts/views/troubleshoot/TroubleShootLayoutView.js
@@ -71,7 +71,7 @@ define(['backbone',
this.vent = new Backbone.Wreqr.EventAggregator();
//this.servicesData = {services:{ranger:{label:"Ranger",components:[{name:"ranger_admin"}],dealsWithServices:[{name:"hdfs"},{name:"kms"}],dealsWithComponents:[{name:"security_admin"},{name:"portal"}],},ambari:{label:"Ambari",dealsWithServices:[{name:"ranger"},{name:"hive"}]},hdfs:{label:"Hdfs",components:[{name:"hdfs_namenode"},{name:"hdfs_datanode"}],dealsWithServices:[],dealsWithComponents:[],}}};
var todayRange = Utils.dateUtil.getTodayRange();
- this.params = _.pick(ViewUtils.getDefaultParamsForHierarchy(),"from","to","bundle_id");
+ this.params = _.pick(ViewUtils.getDefaultParamsForHierarchy(),"from","to","bundle_id","host_name","component_name","file_name");
this.initializeCollection();
this.bindEvents();
},
@@ -107,6 +107,7 @@ define(['backbone',
},
bindEvents : function(){
this.listenTo(this.serviceLogsCollection,"reset",function(){
+ this.renderBarGraph();
this.renderLogLevelTable();
},this);
this.listenTo(this.serviceLogsCollection, 'request', function() {
@@ -126,7 +127,8 @@ define(['backbone',
this.listenTo(this.vent,"logtime:filter",function(params){
//this.fetchServiceLogsData(params);
//this.vent.trigger("graph:data:update",params,this.graphPropModel.attributes);
- this.renderGraph(params);
+ //this.renderGraph(params);
+ this.fetchLevelCollection(params);
this.fetchTopUsers(params);
},this);
},
@@ -141,7 +143,8 @@ define(['backbone',
}
});
this.renderDateRange();
- this.renderGraph(this.params);
+ //this.renderGraph(this.params);
+ this.fetchLevelCollection(this.params);
},
fetchTopUsers : function(params){
var that = this;
@@ -218,9 +221,10 @@ define(['backbone',
}
this.ui.components.select2("val",selectedComponents);
var params = this.getParams();
- this.renderGraph(params);
+ //this.renderGraph(params);
//this.fetchServiceLogsData(params);
//this.fetchTopUsers(params);
+ this.fetchLevelCollection(params);
},
renderServices : function(data){
var that = this;
@@ -255,9 +259,10 @@ define(['backbone',
}
}).on("change",function(e){
var params = that.getParams();
- that.renderGraph(params);
+ //that.renderGraph(params);
//that.fetchServiceLogsData(params);
//that.fetchTopUsers(params);
+ that.fetchLevelCollection(params);
});
},
renderDateRange : function(){
@@ -315,6 +320,13 @@ define(['backbone',
}
return params;
},
+ fetchLevelCollection : function(params){
+ _.extend(this.serviceLogsCollection.queryParams, params,{"yAxis":"count",
+ "xAxis":"level"});
+ this.serviceLogsCollection.fetch({
+ reset: true
+ });
+ },
renderGraph : function(params){
//var that=this,model = new Backbone.Model({"id":"grid_histo0","title":"test","showX":"showX","xAxis":"access","xTimeFormat":"","xNormalFormat":"","showY":"showY","yAxis":"count","yAxisFormat":"","showLegend":"showLegend","stackOrGroup":"Normal","params":{"from":"2016-03-08T18:30:01.000Z","to":"2016-03-09T18:29:59.999Z","unit":"+1HOUR","yAxis":"count","xAxis":"access"},"myData":{"type":2,"dataId":"grid_histo0"},"col":1,"row":1,"size_x":3,"size_y":2});
var that=this,model = new Backbone.Model({
@@ -341,6 +353,53 @@ define(['backbone',
}));
});
},
+ renderBarGraph : function(){
+ var data=[],that=this;
+ this.serviceLogsCollection.each(function(model){
+ var d = {
+ key : "Levels",
+ values : []
+ }
+ for(var z=0; z<model.get("dataCount").length; z++){
+ var name = model.get("dataCount")[z].name;
+ d.values.push({
+ label : (""+name).toUpperCase(),
+ value : parseInt(model.get("dataCount")[z].value,10),
+ color : (((""+name).toUpperCase() === 'ERROR') ? ("#E81D1D") :
+ ( (""+name).toUpperCase() === 'INFO') ? ("#2577B5") :
+ ( (""+name).toUpperCase() === 'WARN') ? ("#FF8916") :
+ ( (""+name).toUpperCase() === 'FATAL') ? ("#830A0A") :
+ ( (""+name).toUpperCase() === 'DEBUG') ? ("#65E8FF") :
+ ( (""+name).toUpperCase() === 'TRACE') ? ("#888888") : "")
+ });
+
+ }
+ data.push(d);
+ });
+ nv.addGraph(function() {
+ var chart = nv.models.discreteBarChart()
+ .x(function(d) { return d.label })
+ .y(function(d) { return d.value })
+ .staggerLabels(true)
+ .width(700)
+ .showValues(false)
+ chart.tooltip.enabled();
+ chart.yAxis
+ .tickFormat(d3.format('d'));
+
+ chart.margin({
+ right: 100,
+ left: 120,
+ });
+ d3.select(that.$("[data-id='serviceGraph'] svg")[0])
+ .datum(data)
+ .transition().duration(500)
+ .call(chart)
+ ;
+ d3.selectAll
+ return chart;
+ });
+ },
renderLogLevelTable : function(){
var that = this;
this.ui.logLevelTable.empty();
@@ -439,7 +498,6 @@ define(['backbone',
$el.siblings().removeClass("active");
$el.toggleClass("active");
if(serviceSelected.length){
- console.log(this.servicesData.service);
// var serviceObj = this.servicesData.service[serviceSelected.data("name")];
// if(serviceObj){
var found = getDependentServices(serviceSelected.data("name"),service);
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/styles/style.css
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/styles/style.css b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/styles/style.css
index 7361df7..de5e45a 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/styles/style.css
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/styles/style.css
@@ -185,6 +185,12 @@ p.log-line:before {
.btn-search {
padding: 2px 6px 3px;
line-height: 1.42857143;
+ margin:0 0;
+}
+
+.btn-searchCompare {
+ padding: 2px 6px 3px;
+ line-height: 1.42857143;
margin:3px 0;
}
@@ -1346,6 +1352,10 @@ img.quickLinkNav{
right: -1px;
top: -2px;
}
+.hostNodes{
+ height: 450px;
+ overflow: auto;
+}
.hostNodes li{
cursor: pointer;
}
@@ -1981,37 +1991,99 @@ input:-webkit-autofill:active{
}
-/*
-.table-fixed thead {
- width: 97%;
+
+.logFeederTable{
+ border-collapse: separate; border-spacing: 0;
+ position: fixed;
+}
+
+.logFeederTable{
+ width: 906px;
+ display : block;
}
-.table-fixed tbody {
- height: 230px;
+
+.logFeederTable tbody {
+ height: 365px;
overflow-y: auto;
- width: 100%;
+ width: 906px;
+ display : block;
}
-.table-fixed thead > tr> th {
- display: table-cell;
- border-bottom:1px solid #CCC;
+
+.logFeederTable th {
+ width: 90px;
+ border-left:1px solid #CCC;
+ border-right:1px solid #CCC;
+ border-top:1px solid #CCC !important;
+ border-bottom:1px solid #CCC !important;
+ background-color: #FFF;
}
-.table-fixed thead, .table-fixed tbody {
- display: block;
+.logFeederTable th:first-of-type {
+ width: 312px;
+ border-right:1px solid #CCC;
+ border-top:1px solid #CCC !important;
+ border-bottom:1px solid #CCC !important;
}
-.table-fixed thead > tr> th{
- width:13%;
+.logFeederTable th:nth-child(2) {
+ width : 190px;
+ border-top:1px solid #CCC !important;
+ border-bottom:1px solid #CCC !important;
}
-.table-fixed thead > tr> th:first-of-type{
- width:28%;
+.datepickerFilter {
+ width:100%;
}
-.table-fixed thead > tr> th:last-of-type{
- border-right-width:0;
-}*/
-.logFeederTabel th {
- width : 12%;
+.logFeederTable td {
+ width :90px;
+ padding:0 10px;
}
-.logFeederTabel th:first-of-type {
- width : 28%;
+.logFeederTable td:first-of-type {
+ width: 269px;
+ padding:0 10px;
}
-.datepickerFilter {
- width:100%;
+.logFeederTable td:nth-child(2) {
+ width: 178px;
+ padding: 0 10px;
}
+.logFeederTable tr.componentRow td{
+ border-top: solid 1px #CCC!important;
+}
+.logFeederTable tr.overrideRow td{
+ border-bottom: solid 1px #CCC!important;
+}
+.logFeederTable tr.borderShow td{
+ border-bottom: solid 1px #CCC!important;
+}
+
+.logFeederTable tr.componentRow td:first-child {border-left: solid 1px #CCC; }
+.logFeederTable tr.componentRow td:last-child { border-right: solid 1px #CCC;}
+
+
+.logFeederTable tr.overrideRow td:first-child { border-left: solid 1px #CCC; }
+.logFeederTable tr.overrideRow td:last-child { border-right: solid 1px #CCC; }
+
+.logFeederTable tr.bgHighlight{
+ background-color: rgba(255, 238, 0, 0.19) !important;
+}
+
+.overrideSpacer{
+ height:13px !important;
+}
+.hostDown{
+ color: #333;
+ margin-right:5px;
+}
+input.filterInput{
+ height: 20px;
+}
+.logFeederTable a{
+ border-bottom:1px dotted;
+}
+.logFeederTable a:hover{
+ text-decoration: none;
+}
+.VS-search .search_input{
+ width: 2px !important;
+}
+.VS-search .search_input input{
+ margin-top: 0 !important;
+}
+
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/styles/style_v2.css
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/styles/style_v2.css b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/styles/style_v2.css
index 832c80a..a4264a1 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/styles/style_v2.css
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/styles/style_v2.css
@@ -1313,7 +1313,7 @@ ul.DTTT_dropdown.dropdown-menu > li:hover > a {
min-height: 26px;
display: block;
height: 26px;
- padding: 0 0 0 8px;
+ padding: 0 0 0 4px;
overflow: hidden;
position: relative;
border: 1px solid #aaa;
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/common/Header_tmpl.html
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/common/Header_tmpl.html b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/common/Header_tmpl.html
index c77f92f..0bc60c3 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/common/Header_tmpl.html
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/common/Header_tmpl.html
@@ -24,7 +24,12 @@
<img src="images/timezone.png" style=" height: 27px; margin-top: 9px;">
</a>
</li>
- <li class="dropdown" data-id="exclusionList" title="Global Exclusion">
+ <!-- <li class="dropdown" data-id="exclusionList" title="Global Exclusion">
+ <a href="#" class="account excludeStatus" data-toggle="modal">
+ <i class="fa fa-filter pull-right"></i>
+ </a>
+ </li> -->
+ <li class="dropdown" data-id="createFilters" title="Global Exclusion">
<a href="#" class="account excludeStatus" data-toggle="modal">
<i class="fa fa-filter pull-right"></i>
</a>
@@ -70,10 +75,10 @@
<i class="fa fa-rocket"></i>
<span>Take A Tour</span>
</a>
- <a class="hidden" href="javascript:void(0)" data-id="createFilters" title="Custom Filters">
+ <!-- <a class="" href="javascript:void(0)" data-id="createFilters" title="Custom Filters">
<i class="fa fa-filter"></i>
- <span>Create Filter</span>
- </a>
+ <span>Logfeeder Filter</span>
+ </a> -->
<a href="logout.html">
<i class="fa fa-power-off"></i>
<span>LogOut</span>
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/dashboard/MainLayoutView_tmpl.html
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/dashboard/MainLayoutView_tmpl.html b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/dashboard/MainLayoutView_tmpl.html
index cd0dda2..c79ed1d 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/dashboard/MainLayoutView_tmpl.html
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/dashboard/MainLayoutView_tmpl.html
@@ -224,8 +224,8 @@
<span>Add Component</span>
</div>
<div class="col-md-3">
- <button class="btn btn-info btn-search" data-id="CompareButton">Compare</button>
- <button class="btn bg-success btn-search" data-id="CompareClearAll" style="margin-bottom: 0px;">clear all</button>
+ <button class="btn btn-info btn-searchCompare" data-id="CompareButton">Compare</button>
+ <button class="btn bg-success btn-searchCompare" data-id="CompareClearAll" style="margin-bottom: 0px;">clear all</button>
</div>
</div>
</div>
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/filter/CreateLogfeederFilter_tmpl.html
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/filter/CreateLogfeederFilter_tmpl.html b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/filter/CreateLogfeederFilter_tmpl.html
index 5139e57..fe2a5c1 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/filter/CreateLogfeederFilter_tmpl.html
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/filter/CreateLogfeederFilter_tmpl.html
@@ -23,17 +23,18 @@
</div> -->
<div class="row row-margin-bottom row-topMargin">
<div class="col-md-12">
- <table class="table table-bordered table-hover table-condensed text-center logFeederTabel">
+ <table class="table table-condensed text-center logFeederTable">
<thead>
- <tr>
+ <tr>
<th>Components</th>
- <th class="FATAL">FATAL</th>
- <th class="ERROR">ERROR</th>
- <th class="WARN">WARN</th>
- <th class="INFO">INFO</th>
- <th class="DEBUG">DEBUG</th>
- <th class="TRACE">TRACE</th>
- </tr>
+ <th>Override</th>
+ <th class="FATAL text-center"><span class="pull-left"><input type="checkbox" data-value="FATAL"></span><span>FATAL</span></th>
+ <th class="ERROR text-center"><span class="pull-left"><input type="checkbox" data-value="ERROR"></span><span>ERROR</span></th>
+ <th class="WARN text-center"><span class="pull-left"><input type="checkbox" data-value="WARN"></span><span>WARN</span></th>
+ <th class="INFO text-center"><span class="pull-left"><input type="checkbox" data-value="INFO"></span><span>INFO</span></th>
+ <th class="DEBUG text-center"><span class="pull-left"><input type="checkbox" data-value="DEBUG"></span><span>DEBUG</span></th>
+ <th class="TRACE text-center"><span class="pull-left"><input type="checkbox" data-value="TRACE"></span><span>TRACE</span></th>
+ </tr>
</thead>
<tbody id="filterContent"></tbody>
</table>
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/tabs/LogFileView_tmpl.html
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/tabs/LogFileView_tmpl.html b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/tabs/LogFileView_tmpl.html
index 4869cd1..f86190c 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/tabs/LogFileView_tmpl.html
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/tabs/LogFileView_tmpl.html
@@ -154,13 +154,15 @@
</div>
</div>
</div>
- <div class="btn-group contextMenu" style="display:none;position:absolute;z-index:9999;">
+ <div class="btn-group contextMenu dropup" style="display:none;position:absolute;z-index:9999;">
<button type="button" class="btn btn-info btn-circle btn-app-sm btn-context dropdown-toggle" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
<i class="fa fa-info"></i>
</button>
<ul class="dropdown-menu">
<li><a data-id="I" href="javascript:void(0);">Include</a></li>
<li><a data-id="E" href="javascript:void(0);">Exclude</a></li>
+ <li><a data-id="IA" href="javascript:void(0);">*Include*</a></li>
+ <li><a data-id="EA" href="javascript:void(0);">*Exclude*</a></li>
<li role="separator" class="divider"></li>
<li><a data-id="F" href="javascript:void(0);">Find</a></li>
</ul>
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/troubleshoot/TroubleShootLayoutView_tmpl.html
----------------------------------------------------------------------
diff --git a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/troubleshoot/TroubleShootLayoutView_tmpl.html b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/troubleshoot/TroubleShootLayoutView_tmpl.html
index a1b4e40..3faaaa6 100644
--- a/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/troubleshoot/TroubleShootLayoutView_tmpl.html
+++ b/ambari-logsearch/ambari-logsearch-portal/src/main/webapp/templates/troubleshoot/TroubleShootLayoutView_tmpl.html
@@ -76,7 +76,8 @@
</div>
<div class="box-content">
<div class="col-md-8" style="height: 250px;"
- data-id="serviceGraph"></div>
+ data-id="serviceGraph"><svg></svg></div>
+
<div class="col-md-3" style="margin-top:1%">
<table class="table table-bordered table-hover custTable"
data-id="logLevelTable">
http://git-wip-us.apache.org/repos/asf/ambari/blob/888faf26/ambari-logsearch/pom.xml
----------------------------------------------------------------------
diff --git a/ambari-logsearch/pom.xml b/ambari-logsearch/pom.xml
index 475de9f..9fa7c96 100644
--- a/ambari-logsearch/pom.xml
+++ b/ambari-logsearch/pom.xml
@@ -154,6 +154,7 @@
<excludes>
<exclude>README.md</exclude>
<exclude>**/*.json</exclude>
+ <exclude>**/*.log</exclude>
</excludes>
</configuration>
<executions>