Skip to content
Projects
Groups
Snippets
Help
Loading...
Help
Support
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in / Register
Toggle navigation
erp5
Project overview
Project overview
Details
Activity
Releases
Repository
Repository
Files
Commits
Branches
Tags
Contributors
Graph
Compare
Issues
0
Issues
0
List
Boards
Labels
Milestones
Merge Requests
0
Merge Requests
0
Analytics
Analytics
Repository
Value Stream
Wiki
Wiki
Snippets
Snippets
Members
Members
Collapse sidebar
Close sidebar
Activity
Graph
Create a new issue
Commits
Issue Boards
Open sidebar
Eteri
erp5
Commits
041bd35c
Commit
041bd35c
authored
Sep 06, 2017
by
Alain Takoudjou
Browse files
Options
Browse Files
Download
Email Patches
Plain Diff
[erp5_web_monitoring] Use generic erp5 graph gadget
parent
f902a75f
Changes
19
Show whitespace changes
Inline
Side-by-side
Showing
19 changed files
with
293 additions
and
1047 deletions
+293
-1047
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_erp5_graph_html.html
...hTemplateItem/web_page_module/gadget_erp5_graph_html.html
+0
-23
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_erp5_graph_html.xml
...thTemplateItem/web_page_module/gadget_erp5_graph_html.xml
+0
-324
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_erp5_graph_js.js
.../PathTemplateItem/web_page_module/gadget_erp5_graph_js.js
+0
-103
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_erp5_graph_js.xml
...PathTemplateItem/web_page_module/gadget_erp5_graph_js.xml
+0
-320
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_appcache.xml
...mplateItem/web_page_module/gadget_monitoring_appcache.xml
+5
-5
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_custom_css.css
...lateItem/web_page_module/gadget_monitoring_custom_css.css
+5
-5
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_custom_css.xml
...lateItem/web_page_module/gadget_monitoring_custom_css.xml
+2
-2
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_resource_view_html.html
...web_page_module/gadget_monitoring_resource_view_html.html
+8
-18
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_resource_view_html.xml
.../web_page_module/gadget_monitoring_resource_view_html.xml
+2
-2
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_resource_view_js.js
...tem/web_page_module/gadget_monitoring_resource_view_js.js
+212
-222
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_resource_view_js.xml
...em/web_page_module/gadget_monitoring_resource_view_js.xml
+2
-2
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_software_instance_view_html.html
...module/gadget_monitoring_software_instance_view_html.html
+1
-1
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_software_instance_view_html.xml
..._module/gadget_monitoring_software_instance_view_html.xml
+2
-2
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_software_instance_view_js.js
...age_module/gadget_monitoring_software_instance_view_js.js
+48
-10
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_software_instance_view_js.xml
...ge_module/gadget_monitoring_software_instance_view_js.xml
+2
-2
bt5/erp5_web_monitoring/bt/dependency_list
bt5/erp5_web_monitoring/bt/dependency_list
+2
-1
bt5/erp5_web_monitoring/bt/template_keep_last_workflow_history_only_path_list
...ing/bt/template_keep_last_workflow_history_only_path_list
+1
-2
bt5/erp5_web_monitoring/bt/template_keep_workflow_path_list
bt5/erp5_web_monitoring/bt/template_keep_workflow_path_list
+1
-2
bt5/erp5_web_monitoring/bt/template_path_list
bt5/erp5_web_monitoring/bt/template_path_list
+0
-1
No files found.
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_erp5_graph_html.html
deleted
100644 → 0
View file @
f902a75f
<!DOCTYPE html>
<html>
<head>
<meta
http-equiv=
"Content-type"
content=
"text/html; charset=utf-8"
/>
<meta
name=
"viewport"
content=
"width=device-width, user-scalable=no"
/>
<title>
ERP5 Graph
</title>
<!-- custom css -->
<!-- renderjs -->
<script
src=
"rsvp.js"
type=
"text/javascript"
></script>
<script
src=
"renderjs.js"
type=
"text/javascript"
></script>
<!-- custom script -->
<script
src=
"dygraph.js"
type=
"text/javascript"
></script>
<script
src=
"gadget_erp5_graph.js"
type=
"text/javascript"
></script>
</head>
<body>
<div
class=
"custom-grid-wrap"
>
<div
class=
"custom-grid ui-corner-all ui-body-inherit ui-shadow ui-corner-all"
></div>
</div>
</body>
</html>
\ No newline at end of file
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_erp5_graph_html.xml
deleted
100644 → 0
View file @
f902a75f
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Web Page"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_Access_contents_information_Permission
</string>
</key>
<value>
<tuple>
<string>
Anonymous
</string>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Auditor
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Add_portal_content_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Change_local_roles_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignor
</string>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Modify_portal_content_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_View_Permission
</string>
</key>
<value>
<tuple>
<string>
Anonymous
</string>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Auditor
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
content_md5
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
content_type
</string>
</key>
<value>
<string>
text/html
</string>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
gadget_erp5_graph.html
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
gadget_erp5_graph_html
</string>
</value>
</item>
<item>
<key>
<string>
language
</string>
</key>
<value>
<string>
en
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Web Page
</string>
</value>
</item>
<item>
<key>
<string>
short_title
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Gadget ERP5 Graph HTML
</string>
</value>
</item>
<item>
<key>
<string>
version
</string>
</key>
<value>
<string>
001
</string>
</value>
</item>
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
document_publication_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAM=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
edit_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAQ=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
processing_status_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAU=
</string>
</persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.patches.WorkflowTool"
/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<string>
publish_alive
</string>
</value>
</item>
<item>
<key>
<string>
actor
</string>
</key>
<value>
<string>
klaus
</string>
</value>
</item>
<item>
<key>
<string>
comment
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
error_message
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
time
</string>
</key>
<value>
<object>
<klass>
<global
name=
"DateTime"
module=
"DateTime.DateTime"
/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>
1436866425.69
</float>
<string>
UTC
</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key>
<string>
validation_state
</string>
</key>
<value>
<string>
published_alive
</string>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record
id=
"4"
aka=
"AAAAAAAAAAQ="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.patches.WorkflowTool"
/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<string>
edit
</string>
</value>
</item>
<item>
<key>
<string>
actor
</string>
</key>
<value>
<string>
zope
</string>
</value>
</item>
<item>
<key>
<string>
comment
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
error_message
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
961.6384.703.48554
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
<value>
<string>
current
</string>
</value>
</item>
<item>
<key>
<string>
time
</string>
</key>
<value>
<object>
<klass>
<global
name=
"DateTime"
module=
"DateTime.DateTime"
/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>
1502181790.43
</float>
<string>
UTC
</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record
id=
"5"
aka=
"AAAAAAAAAAU="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.patches.WorkflowTool"
/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<string>
detect_converted_file
</string>
</value>
</item>
<item>
<key>
<string>
actor
</string>
</key>
<value>
<string>
zope
</string>
</value>
</item>
<item>
<key>
<string>
comment
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
error_message
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
external_processing_state
</string>
</key>
<value>
<string>
converted
</string>
</value>
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
0.0.0.0
</string>
</value>
</item>
<item>
<key>
<string>
time
</string>
</key>
<value>
<object>
<klass>
<global
name=
"DateTime"
module=
"DateTime.DateTime"
/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>
1436862905.63
</float>
<string>
UTC
</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_erp5_graph_js.js
deleted
100644 → 0
View file @
f902a75f
/*global window, rJS, console, RSVP, Dygraph */
/*jslint indent: 2, maxerr: 3 */
(
function
(
rJS
,
window
,
RSVP
,
Dygraph
)
{
"
use strict
"
;
// Custom Interaction Model for synchronised graphs
var
customInteractionModel
=
Dygraph
.
Interaction
.
defaultModel
;
customInteractionModel
.
touchend
=
function
(
event
,
g
,
context
)
{
Dygraph
.
Interaction
.
endTouch
(
event
,
g
,
context
);
var
viewWindow
=
g
.
xAxisRange
();
g
.
getFunctionOption
(
"
zoomCallback
"
).
call
(
g
,
viewWindow
[
0
],
viewWindow
[
1
],
g
.
yAxisRanges
());
};
/*customInteractionModel.touchmove = function(event, g, context) {
Dygraph.Interaction.moveTouch(event, g, context);
var viewWindow = g.xAxisRange();
g.getFunctionOption("zoomCallback").call(g, viewWindow[0], viewWindow[1], g.yAxisRanges());
};
customInteractionModel.mousemove = function(event, g, context) {
if (context.isPanning) {
var viewWindow = g.xAxisRange();
g.getFunctionOption("zoomCallback").call(g, viewWindow[0], viewWindow[1], g.yAxisRanges());
}
}*/
customInteractionModel
.
mouseup
=
function
(
event
,
g
,
context
)
{
if
(
context
.
isPanning
)
{
var
viewWindow
=
g
.
xAxisRange
();
g
.
getFunctionOption
(
"
zoomCallback
"
).
call
(
g
,
viewWindow
[
0
],
viewWindow
[
1
],
g
.
yAxisRanges
());
}
};
rJS
(
window
)
.
setState
({
graph
:
""
})
/////////////////////////////////////////////////////////////////
// ready
/////////////////////////////////////////////////////////////////
.
ready
(
function
(
gadget
)
{
return
;
})
/////////////////////////////////////////////////////////////////
// declared methods
/////////////////////////////////////////////////////////////////
.
declareMethod
(
'
getColors
'
,
function
()
{
var
gadget
=
this
;
return
new
RSVP
.
Queue
()
.
push
(
function
()
{
return
gadget
.
state
.
graph
.
getColors
();
});
})
.
declareMethod
(
'
setVisibility
'
,
function
(
num
,
value
)
{
var
gadget
=
this
;
return
new
RSVP
.
Queue
()
.
push
(
function
()
{
return
gadget
.
state
.
graph
.
setVisibility
(
num
,
value
);
});
})
.
declareMethod
(
'
updateOptions
'
,
function
(
options
,
ndarray
)
{
var
gadget
=
this
;
return
new
RSVP
.
Queue
()
.
push
(
function
()
{
gadget
.
state
.
graph
.
ndarray
=
ndarray
;
return
gadget
.
state
.
graph
.
updateOptions
(
options
);
});
})
.
declareMethod
(
'
resize
'
,
function
(
width
,
height
)
{
var
gadget
=
this
;
return
new
RSVP
.
Queue
()
.
push
(
function
()
{
return
gadget
.
state
.
graph
.
resize
(
width
,
height
);
});
})
// render gadget
.
declareMethod
(
'
render
'
,
function
(
data
,
option_dict
,
interactionModel
)
{
var
gadget
=
this
;
if
(
interactionModel
===
"
customInteractionModel
"
)
{
option_dict
.
interactionModel
=
customInteractionModel
;
}
return
new
RSVP
.
Queue
()
.
push
(
function
()
{
return
gadget
.
changeState
({
graph
:
new
Dygraph
(
gadget
.
element
,
data
,
option_dict
)
});
});
});
}(
rJS
,
window
,
RSVP
,
Dygraph
));
\ No newline at end of file
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_erp5_graph_js.xml
deleted
100644 → 0
View file @
f902a75f
<?xml version="1.0"?>
<ZopeData>
<record
id=
"1"
aka=
"AAAAAAAAAAE="
>
<pickle>
<global
name=
"Web Script"
module=
"erp5.portal_type"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
_Access_contents_information_Permission
</string>
</key>
<value>
<tuple>
<string>
Anonymous
</string>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Auditor
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Add_portal_content_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Change_local_roles_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignor
</string>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_Modify_portal_content_Permission
</string>
</key>
<value>
<tuple>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Manager
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
_View_Permission
</string>
</key>
<value>
<tuple>
<string>
Anonymous
</string>
<string>
Assignee
</string>
<string>
Assignor
</string>
<string>
Associate
</string>
<string>
Auditor
</string>
<string>
Manager
</string>
<string>
Owner
</string>
</tuple>
</value>
</item>
<item>
<key>
<string>
content_md5
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
default_reference
</string>
</key>
<value>
<string>
gadget_erp5_graph.js
</string>
</value>
</item>
<item>
<key>
<string>
description
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
id
</string>
</key>
<value>
<string>
gadget_erp5_graph_js
</string>
</value>
</item>
<item>
<key>
<string>
language
</string>
</key>
<value>
<string>
en
</string>
</value>
</item>
<item>
<key>
<string>
portal_type
</string>
</key>
<value>
<string>
Web Script
</string>
</value>
</item>
<item>
<key>
<string>
short_title
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
title
</string>
</key>
<value>
<string>
Gadget ERP5 Graph JS
</string>
</value>
</item>
<item>
<key>
<string>
version
</string>
</key>
<value>
<string>
001
</string>
</value>
</item>
<item>
<key>
<string>
workflow_history
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAI=
</string>
</persistent>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"2"
aka=
"AAAAAAAAAAI="
>
<pickle>
<global
name=
"PersistentMapping"
module=
"Persistence.mapping"
/>
</pickle>
<pickle>
<dictionary>
<item>
<key>
<string>
data
</string>
</key>
<value>
<dictionary>
<item>
<key>
<string>
document_publication_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAM=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
edit_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAQ=
</string>
</persistent>
</value>
</item>
<item>
<key>
<string>
processing_status_workflow
</string>
</key>
<value>
<persistent>
<string
encoding=
"base64"
>
AAAAAAAAAAU=
</string>
</persistent>
</value>
</item>
</dictionary>
</value>
</item>
</dictionary>
</pickle>
</record>
<record
id=
"3"
aka=
"AAAAAAAAAAM="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.patches.WorkflowTool"
/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<string>
publish_alive
</string>
</value>
</item>
<item>
<key>
<string>
actor
</string>
</key>
<value>
<string>
zope
</string>
</value>
</item>
<item>
<key>
<string>
comment
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
error_message
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
time
</string>
</key>
<value>
<object>
<klass>
<global
name=
"DateTime"
module=
"DateTime.DateTime"
/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>
1424964039.23
</float>
<string>
GMT+1
</string>
</tuple>
</state>
</object>
</value>
</item>
<item>
<key>
<string>
validation_state
</string>
</key>
<value>
<string>
published_alive
</string>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record
id=
"4"
aka=
"AAAAAAAAAAQ="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.patches.WorkflowTool"
/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<string>
edit
</string>
</value>
</item>
<item>
<key>
<string>
actor
</string>
</key>
<value>
<string>
zope
</string>
</value>
</item>
<item>
<key>
<string>
comment
</string>
</key>
<value>
<none/>
</value>
</item>
<item>
<key>
<string>
error_message
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
961.17557.16588.9198
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
<value>
<string>
current
</string>
</value>
</item>
<item>
<key>
<string>
time
</string>
</key>
<value>
<object>
<klass>
<global
name=
"DateTime"
module=
"DateTime.DateTime"
/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>
1502188185.78
</float>
<string>
UTC
</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
<record
id=
"5"
aka=
"AAAAAAAAAAU="
>
<pickle>
<global
name=
"WorkflowHistoryList"
module=
"Products.ERP5Type.patches.WorkflowTool"
/>
</pickle>
<pickle>
<tuple>
<none/>
<list>
<dictionary>
<item>
<key>
<string>
action
</string>
</key>
<value>
<string>
detect_converted_file
</string>
</value>
</item>
<item>
<key>
<string>
actor
</string>
</key>
<value>
<string>
zope
</string>
</value>
</item>
<item>
<key>
<string>
comment
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
error_message
</string>
</key>
<value>
<string></string>
</value>
</item>
<item>
<key>
<string>
external_processing_state
</string>
</key>
<value>
<string>
converted
</string>
</value>
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
0.0.0.0
</string>
</value>
</item>
<item>
<key>
<string>
time
</string>
</key>
<value>
<object>
<klass>
<global
name=
"DateTime"
module=
"DateTime.DateTime"
/>
</klass>
<tuple>
<none/>
</tuple>
<state>
<tuple>
<float>
1424964005.47
</float>
<string>
GMT+1
</string>
</tuple>
</state>
</object>
</value>
</item>
</dictionary>
</list>
</tuple>
</pickle>
</record>
</ZopeData>
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_appcache.xml
View file @
041bd35c
...
...
@@ -105,7 +105,7 @@
<item>
<key>
<string>
text_content
</string>
</key>
<value>
<string>
CACHE MANIFEST\n
# generated on Fri,
11 august
2017 15:47:33 +0000\n
# generated on Fri,
07 sep
2017 15:47:33 +0000\n
# XXX + fonts\n
# images/ajax-loader.gif\n
CACHE:\n
...
...
@@ -119,8 +119,8 @@ URI.js\n
dygraph.js\n
gadget_erp5.css\n
gadget_global.js\n
gadget_
erp5_
graph.html\n
gadget_
erp5_
graph.js\n
gadget_
field_graph_dy
graph.html\n
gadget_
field_graph_dy
graph.js\n
gadget_jio.html\n
gadget_jio.js\n
gadget_translate.html\n
...
...
@@ -328,7 +328,7 @@ NETWORK:\n
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
961.
46782.15224.10001
</string>
</value>
<value>
<string>
961.
61188.16000.18722
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -346,7 +346,7 @@ NETWORK:\n
</tuple>
<state>
<tuple>
<float>
150
3935899.97
</float>
<float>
150
4800490.65
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_custom_css.css
View file @
041bd35c
...
...
@@ -511,13 +511,13 @@ html .custom-grid-wrap table thead tr th {
position
:
relative
;
}
.graph-medium
{
height
:
20
0px
;
width
:
100
%
;
height
:
32
0px
;
width
:
98
%
;
}
.graph-h-medium
{
height
:
23
0px
;
width
:
100
%
;
margin
:
30px
0
;
height
:
32
0px
;
width
:
98
%
;
margin
:
30px
;
}
.ui-grid-column
.graph-state-labels
{
margin
:
10px
;
...
...
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_custom_css.xml
View file @
041bd35c
...
...
@@ -239,7 +239,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
961.
46334.51033.4727
</string>
</value>
<value>
<string>
961.
59579.23436.30429
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -257,7 +257,7 @@
</tuple>
<state>
<tuple>
<float>
1504
086678.92
</float>
<float>
1504
708727.24
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_resource_view_html.html
View file @
041bd35c
...
...
@@ -40,32 +40,22 @@
</div>
</div>
<h2
class=
"header-notice"
><i
class=
"fa fa-info"
aria-hidden=
"true"
></i>
Graph content will be reloaded automatically every minutes.
</h2>
<ul
class=
"ui-grid-column ui-grid-column-5 graph_cpu"
>
<li
class=
"ui-grid-span-
4
custom-grid-wrap graph-cell"
>
<
!--<
ul class="ui-grid-column ui-grid-column-5 graph_cpu">
<li class="ui-grid-span-
5
custom-grid-wrap graph-cell">
<div data-gadget-url="gadget_erp5_graph.html" data-gadget-scope="graph_cpu" class="graph graph-h-medium" data-gadget-sandbox="public"></div>
</li>
<li class="ui-grid-span-1 custom-grid-wrap graph-cell">
</li>
</ul>
</ul>
-->
<div
class=
"ui-grid-a ui-responsive"
>
<div
class=
"ui-block-a"
>
<div
data-gadget-url=
"gadget_erp5_graph.html"
data-gadget-scope=
"graph_memory_used"
class=
"graph graph-h-medium"
data-gadget-sandbox=
"public"
></div>
</div>
<div
class=
"ui-block-b"
>
<div
data-gadget-url=
"gadget_erp5_graph.html"
data-gadget-scope=
"graph_memory_percent"
class=
"graph graph-h-medium"
data-gadget-sandbox=
"public"
></div>
<div
data-gadget-url=
"gadget_field_graph_dygraph.html"
data-gadget-scope=
"graph_cpu"
class=
"graph graph-h-medium"
data-gadget-sandbox=
"public"
></div>
</div>
<div
class=
"ui-grid-a ui-responsive"
>
<div
data-gadget-url=
"gadget_field_graph_dygraph.html"
data-gadget-scope=
"graph_memory_used"
class=
"graph graph-h-medium"
data-gadget-sandbox=
"public"
></div>
</div>
<div
class=
"ui-grid-b ui-responsive"
>
<div
class=
"ui-block-a"
>
<div
data-gadget-url=
"gadget_erp5_graph.html"
data-gadget-scope=
"graph_disk_used"
class=
"graph graph-h-medium"
data-gadget-sandbox=
"public"
></div>
</div>
<div
class=
"ui-block-b"
>
<div
data-gadget-url=
"gadget_erp5_graph.html"
data-gadget-scope=
"graph_io_rw"
class=
"graph graph-h-medium"
data-gadget-sandbox=
"public"
></div>
</div>
<div
class=
"ui-block-c"
>
<div
data-gadget-url=
"gadget_erp5_graph.html"
data-gadget-scope=
"graph_io_counter"
class=
"graph graph-h-medium"
data-gadget-sandbox=
"public"
></div>
</div>
<div
data-gadget-url=
"gadget_field_graph_dygraph.html"
data-gadget-scope=
"graph_io"
class=
"graph graph-h-medium"
data-gadget-sandbox=
"public"
></div>
</div>
<div
class=
'graph-footer'
>
...
...
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_resource_view_html.xml
View file @
041bd35c
...
...
@@ -243,7 +243,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
961.
47920.32703.17493
</string>
</value>
<value>
<string>
961.
59537.30226.3259
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -261,7 +261,7 @@
</tuple>
<state>
<tuple>
<float>
1504
086069.06
</float>
<float>
1504
704987.14
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_resource_view_js.js
View file @
041bd35c
...
...
@@ -40,12 +40,6 @@
gadget
.
property_dict
.
graph_mem_used
=
graph_memory_used
;
});
})
.
ready
(
function
(
gadget
)
{
return
gadget
.
getDeclaredGadget
(
"
graph_memory_percent
"
)
.
push
(
function
(
graph_memory_percent
)
{
gadget
.
property_dict
.
graph_mem_percent
=
graph_memory_percent
;
});
})
.
ready
(
function
(
gadget
)
{
return
gadget
.
getDeclaredGadget
(
"
graph_cpu
"
)
.
push
(
function
(
graph_cpu
)
{
...
...
@@ -54,21 +48,9 @@
});
})
.
ready
(
function
(
gadget
)
{
return
gadget
.
getDeclaredGadget
(
"
graph_io_counter
"
)
.
push
(
function
(
graph_io_counter
)
{
gadget
.
property_dict
.
graph_io_counter
=
graph_io_counter
;
});
})
.
ready
(
function
(
gadget
)
{
return
gadget
.
getDeclaredGadget
(
"
graph_io_rw
"
)
.
push
(
function
(
graph_io_rw
)
{
gadget
.
property_dict
.
graph_io_rw
=
graph_io_rw
;
});
})
.
ready
(
function
(
gadget
)
{
return
gadget
.
getDeclaredGadget
(
"
graph_disk_used
"
)
.
push
(
function
(
graph_disk_used
)
{
gadget
.
property_dict
.
graph_disk_used
=
graph_disk_used
;
return
gadget
.
getDeclaredGadget
(
"
graph_io
"
)
.
push
(
function
(
graph_io
)
{
gadget
.
property_dict
.
graph_io
=
graph_io
;
});
})
.
ready
(
function
(
gadget
)
{
...
...
@@ -80,46 +62,7 @@
.
declareMethod
(
"
render
"
,
function
(
options
)
{
var
gadget
=
this
;
function
loadGraphData
(
key
)
{
var
resource_key
=
gadget
.
property_dict
.
ressource_dict
[
key
];
return
gadget
.
property_dict
.
jio_gadget
.
get
(
resource_key
)
.
push
(
undefined
,
function
(
error
)
{
console
.
log
(
error
);
$
.
notify
(
"
Error: Failed to download resource file '
"
+
resource_key
+
"
' from URL:
"
+
gadget
.
state
.
opml_outline
.
url
,
{
position
:
"
top right
"
,
autoHideDelay
:
7000
,
className
:
"
error
"
}
);
return
{
data
:
[]
};
})
.
push
(
function
(
jio_element
)
{
if
(
!
jio_element
.
hasOwnProperty
(
'
data
'
))
{
return
{
data
:
[]};
}
switch
(
key
)
{
case
"
memory_resource
"
:
gadget
.
property_dict
.
mem_data
=
jio_element
;
break
;
case
"
cpu_resource
"
:
gadget
.
property_dict
.
process_data
=
jio_element
;
if
(
jio_element
.
data
.
length
>
0
)
{
gadget
.
property_dict
.
graph_cpu_label_list
=
jio_element
.
data
[
0
].
split
(
'
,
'
);
}
break
;
case
"
io_resource
"
:
gadget
.
property_dict
.
io_data
=
jio_element
;
break
;
}
return
jio_element
;
});
}
gadget
.
property_dict
.
document_key
=
options
.
key
;
return
gadget
.
updateHeader
({
title
:
"
Monitoring resources view
"
})
...
...
@@ -160,8 +103,6 @@
});
})
.
push
(
function
()
{
var
key
,
promise_list
=
[];
gadget
.
property_dict
.
jio_gadget
.
createJio
({
type
:
"
webhttp
"
,
url
:
(
gadget
.
state
.
opml_outline
.
url
...
...
@@ -169,19 +110,13 @@
'
documents/
'
).
replace
(
"
jio_private
"
,
"
private
"
),
basic_login
:
gadget
.
state
.
opml
.
basic_login
});
for
(
key
in
gadget
.
property_dict
.
ressource_dict
)
{
if
(
gadget
.
property_dict
.
ressource_dict
.
hasOwnProperty
(
key
))
{
promise_list
.
push
(
loadGraphData
(
key
));
}
}
return
RSVP
.
all
(
promise_list
);
})
.
push
(
function
()
{
gadget
.
property_dict
.
mem_data
=
{
data
:
[]};
gadget
.
property_dict
.
process_data
=
{
data
:
[]};
gadget
.
property_dict
.
io_data
=
{
data
:
[]};
return
gadget
.
property_dict
.
render_deferred
.
resolve
();
});
})
.
declareAcquiredMethod
(
"
getUrlFor
"
,
"
getUrlFor
"
)
.
declareAcquiredMethod
(
"
updateHeader
"
,
"
updateHeader
"
)
.
declareAcquiredMethod
(
'
jio_allDocs
'
,
'
jio_allDocs
'
)
.
declareAcquiredMethod
(
'
jio_get
'
,
'
jio_get
'
)
...
...
@@ -193,7 +128,7 @@
var
gadget
=
this
,
date_window
=
[];
function
toggleSerieVisibility
(
evt
)
{
/*
function toggleSerieVisibility(evt) {
var checkbox = evt.target.nextSibling,
index = $(evt.target).attr('rel');
if ($(checkbox).prop("checked")) {
...
...
@@ -205,14 +140,54 @@
.push(function () {
return evt;
});
}*/
function
loadGraphData
(
key
)
{
var
resource_key
=
gadget
.
property_dict
.
ressource_dict
[
key
];
return
gadget
.
property_dict
.
jio_gadget
.
get
(
resource_key
)
.
push
(
undefined
,
function
(
error
)
{
console
.
log
(
error
);
$
.
notify
(
"
Error: Failed to download resource file '
"
+
resource_key
+
"
' from URL:
"
+
gadget
.
state
.
opml_outline
.
url
,
{
position
:
"
top right
"
,
autoHideDelay
:
7000
,
className
:
"
error
"
}
);
return
{
data
:
[]
};
})
.
push
(
function
(
jio_element
)
{
date_window
=
getDateWindow
(
gadget
.
property_dict
.
mem_data
.
data
);
if
(
!
jio_element
.
hasOwnProperty
(
'
data
'
))
{
return
{
data
:
[]};
}
switch
(
key
)
{
case
"
memory_resource
"
:
gadget
.
property_dict
.
mem_data
=
jio_element
;
break
;
case
"
cpu_resource
"
:
gadget
.
property_dict
.
process_data
=
jio_element
;
break
;
case
"
io_resource
"
:
gadget
.
property_dict
.
io_data
=
jio_element
;
break
;
}
return
jio_element
;
});
}
function
updateIOData
()
{
function
updateIOData
(
date_window
)
{
var
i
,
element
,
prev_element
,
date_diff
,
io_data
=
""
;
line_list
=
[],
data_list
=
[],
axis_dict
=
{};
function
convertElement
(
element
)
{
var
element_list
=
element
.
split
(
'
,
'
);
...
...
@@ -223,23 +198,50 @@
element_list
[
3
].
trim
()
];
}
if
(
gadget
.
property_dict
.
io_data
.
data
.
length
>
1
)
{
//"date, io rw counter, io cycles counter, disk used"
line_list
=
[
"
date
"
,
"
io rw count (Kb/s)
"
,
"
io cycles count (/1000)
"
];
//, "disk used"];
axis_dict
[
"
0
"
]
=
{
"
title
"
:
"
IO resources usage
"
,
"
scale_type
"
:
"
linear
"
,
"
value_type
"
:
"
date
"
,
"
zoom_range
"
:
date_window
};
for
(
i
=
1
;
i
<
line_list
.
length
;
i
+=
1
)
{
line_list
[
i
]
=
line_list
[
i
].
trim
();
data_list
.
push
({
value_dict
:
{
"
0
"
:
[],
"
1
"
:
[]},
type
:
"
surface
"
,
axis_mapping_id_dict
:
{
"
1
"
:
"
1_
"
+
i
},
title
:
line_list
[
i
]
});
axis_dict
[
"
1_
"
+
i
]
=
{
"
title
"
:
line_list
[
i
],
"
position
"
:
"
right
"
};
}
if
(
gadget
.
property_dict
.
io_data
.
data
.
length
>
2
)
{
prev_element
=
convertElement
(
gadget
.
property_dict
.
io_data
.
data
[
1
]);
io_data
=
gadget
.
property_dict
.
io_data
.
data
[
0
];
for
(
i
=
2
;
i
<
gadget
.
property_dict
.
io_data
.
data
.
length
;
i
+=
1
)
{
element
=
convertElement
(
gadget
.
property_dict
.
io_data
.
data
[
i
]);
date_diff
=
(
new
Date
(
element
[
0
]).
getTime
()
-
new
Date
(
prev_element
[
0
]).
getTime
())
/
1000
;
io_data
+=
"
\n
"
+
element
[
0
]
+
"
,
"
+
(
element
[
1
]
-
prev_element
[
1
])
/
(
1024
*
date_diff
)
+
"
,
"
+
(
element
[
2
]
-
prev_element
[
2
])
/
1000
+
"
,
"
+
element
[
3
];
// XXX - repeating date everytime
data_list
[
0
].
value_dict
[
"
0
"
].
push
(
element
[
0
]);
data_list
[
0
].
value_dict
[
"
1
"
].
push
((
element
[
1
]
-
prev_element
[
1
])
/
(
1024
*
date_diff
));
// XXX - repeating date everytime
data_list
[
1
].
value_dict
[
"
0
"
].
push
(
element
[
0
]);
data_list
[
1
].
value_dict
[
"
1
"
].
push
((
element
[
2
]
-
prev_element
[
2
])
/
1000
);
// XXX - repeating date everytime
/*data_list[2].value_dict["0"].push(element[0]);
data_list[2].value_dict["1"].push(element[3]);*/
prev_element
=
element
;
}
}
gadget
.
property_dict
.
io_data_csv
=
io_data
;
return
{
value
:{
data
:
data_list
,
layout
:
{
axis_dict
:
axis_dict
,
title
:
"
IO resources usage
"
}
}
function
formatDateToString
(
d
)
{
return
d
.
toISOString
().
slice
(
0
,
10
)
+
'
'
+
d
.
getHours
()
+
'
:
'
+
d
.
getMinutes
()
+
'
:
'
+
d
.
getSeconds
();
};
}
function
getDateWindow
(
data
)
{
...
...
@@ -247,8 +249,6 @@
begin_date
,
end_date
,
date_window
=
[];
gadget
.
property_dict
.
timer
=
null
;
gadget
.
property_dict
.
loading
=
false
;
if
(
data
.
length
>
0
)
{
max_date
=
data
[
data
.
length
-
1
].
split
(
'
,
'
)[
0
];
begin_date
=
new
Date
(
max_date
);
...
...
@@ -259,88 +259,149 @@
return
date_window
;
}
function
updateGraphData
(
key
)
{
return
gadget
.
property_dict
.
jio_gadget
.
get
(
gadget
.
property_dict
.
ressource_dict
[
key
])
.
push
(
function
(
jio_element
)
{
if
(
!
jio_element
.
hasOwnProperty
(
'
data
'
))
{
return
{};
}
// FIX
//jio_element.data[0] = jio_element.data[0].replace('%', 'percent');
switch
(
key
)
{
case
"
memory_resource
"
:
gadget
.
property_dict
.
mem_data
=
jio_element
;
break
;
case
"
cpu_resource
"
:
gadget
.
property_dict
.
process_data
=
jio_element
;
break
;
case
"
io_resource
"
:
gadget
.
property_dict
.
io_data
=
jio_element
;
break
;
default
:
}
return
jio_element
;
});
}
function
updateGraph
()
{
return
new
RSVP
.
Queue
()
.
push
(
function
()
{
var
key
,
promise_list
=
[];
for
(
key
in
gadget
.
property_dict
.
ressource_dict
)
{
promise_list
.
push
(
update
GraphData
(
key
));
promise_list
.
push
(
load
GraphData
(
key
));
}
return
RSVP
.
all
(
promise_list
);
})
.
push
(
function
()
{
date_window
=
getDateWindow
(
gadget
.
property_dict
.
mem_data
.
data
);
return
gadget
.
property_dict
.
graph_mem_used
.
updateOptions
({
file
:
gadget
.
property_dict
.
mem_data
.
data
.
join
(
'
\n
'
),
dateWindow
:
date_window
});
})
.
push
(
function
()
{
return
gadget
.
property_dict
.
graph_mem_percent
.
updateOptions
({
file
:
gadget
.
property_dict
.
mem_data
.
data
.
join
(
'
\n
'
),
dateWindow
:
date_window
});
var
data
=
updateIOData
(
date_window
);
return
gadget
.
property_dict
.
graph_io
.
render
(
data
);
})
.
push
(
function
()
{
updateIOData
();
return
gadget
.
property_dict
.
graph_io_rw
.
updateOptions
({
file
:
gadget
.
property_dict
.
io_data_csv
,
dateWindow
:
date_window
var
data_list
=
[],
axis_dict
=
{},
line_list
,
i
,
j
;
axis_dict
=
{
"
0
"
:
{
"
title
"
:
"
Memory resources usage (Mo)
"
,
"
scale_type
"
:
"
linear
"
,
"
value_type
"
:
"
date
"
,
"
zoom_range
"
:
date_window
},
"
1_2
"
:
{
"
title
"
:
"
Memory used percent
"
,
"
position
"
:
"
right
"
},
"
1_1
"
:
{
"
title
"
:
"
Memory used
"
,
"
position
"
:
"
right
"
}
};
/*data_list.push({
value_dict: {"0": [], "1": []},
type: "surface",
axis_mapping_id_dict: {"1": "1_1"},
title: "Memory used percent"
});*/
data_list
.
push
({
value_dict
:
{
"
0
"
:
[],
"
1
"
:
[]},
type
:
"
surface
"
,
axis_mapping_id_dict
:
{
"
1
"
:
"
1_2
"
},
title
:
"
Memory used
"
});
})
.
push
(
function
()
{
return
gadget
.
property_dict
.
graph_io_counter
.
updateOptions
({
file
:
gadget
.
property_dict
.
io_data_csv
,
dateWindow
:
date_window
for
(
i
=
1
;
i
<
gadget
.
property_dict
.
mem_data
.
data
.
length
;
i
+=
1
)
{
line_list
=
gadget
.
property_dict
.
mem_data
.
data
[
i
].
split
(
'
,
'
);
data_list
[
0
].
value_dict
[
"
0
"
].
push
(
line_list
[
0
]);
data_list
[
0
].
value_dict
[
"
1
"
].
push
(
line_list
[
2
]);
}
return
gadget
.
property_dict
.
graph_mem_used
.
render
({
value
:{
data
:
data_list
,
layout
:
{
axis_dict
:
axis_dict
,
title
:
"
Memory resources usage
"
}
}
});
})
.
push
(
function
()
{
return
gadget
.
property_dict
.
graph_disk_used
.
updateOptions
({
file
:
gadget
.
property_dict
.
io_data_csv
,
dateWindow
:
date_window
var
data_list
=
[],
axis_dict
=
{},
previous_time
=
0
,
line_list
,
cpu_time_index
=
-
1
,
i
,
j
;
function
getCPUTime
(
current
)
{
var
increment
=
0
;
if
(
previous_time
===
0
)
{
previous_time
=
current
;
return
0
;
}
increment
=
current
-
previous_time
;
previous_time
=
current
;
return
increment
;
}
//"date, total process, CPU percent, CPU time, CPU threads"
if
(
gadget
.
property_dict
.
process_data
.
data
.
length
>
0
)
{
line_list
=
gadget
.
property_dict
.
process_data
.
data
[
0
].
split
(
'
,
'
);
}
else
{
line_list
=
[
"
date
"
,
"
total process
"
,
"
CPU percent
"
,
"
CPU time
"
,
"
CPU threads
"
];
}
axis_dict
[
"
0
"
]
=
{
"
title
"
:
"
Process resources usage
"
,
"
scale_type
"
:
"
linear
"
,
"
value_type
"
:
"
date
"
,
"
zoom_range
"
:
date_window
};
for
(
i
=
1
;
i
<
line_list
.
length
;
i
+=
1
)
{
line_list
[
i
]
=
line_list
[
i
].
trim
();
data_list
.
push
({
value_dict
:
{
"
0
"
:
[],
"
1
"
:
[]},
type
:
"
line
"
,
axis_mapping_id_dict
:
{
"
1
"
:
"
1_
"
+
i
},
title
:
line_list
[
i
]
});
})
.
push
(
function
()
{
return
gadget
.
property_dict
.
graph_cpu
.
updateOptions
({
file
:
gadget
.
property_dict
.
process_data
.
data
.
join
(
'
\n
'
),
dateWindow
:
date_window
if
(
line_list
[
i
]
===
"
CPU time
"
)
{
cpu_time_index
=
i
;
}
axis_dict
[
"
1_
"
+
i
]
=
{
"
title
"
:
line_list
[
i
],
"
position
"
:
"
right
"
};
}
for
(
i
=
1
;
i
<
gadget
.
property_dict
.
process_data
.
data
.
length
;
i
+=
1
)
{
line_list
=
gadget
.
property_dict
.
process_data
.
data
[
i
].
split
(
'
,
'
);
for
(
j
=
1
;
j
<
line_list
.
length
;
j
+=
1
)
{
// XXX - repeating date everytime
data_list
[
j
-
1
].
value_dict
[
"
0
"
].
push
(
line_list
[
0
]);
if
(
j
===
cpu_time_index
)
{
data_list
[
j
-
1
].
value_dict
[
"
1
"
].
push
(
getCPUTime
(
line_list
[
j
]));
}
else
{
data_list
[
j
-
1
].
value_dict
[
"
1
"
].
push
(
line_list
[
j
]);
}
}
}
return
gadget
.
property_dict
.
graph_cpu
.
render
({
value
:{
data
:
data_list
,
layout
:
{
axis_dict
:
axis_dict
,
title
:
"
Process resources usage
"
}
}
});
});
}
function
updateGraphTimer
()
{
if
(
gadget
.
property_dict
.
loading
&&
gadget
.
property_dict
.
timer
)
{
if
(
gadget
.
property_dict
.
timer
)
{
clearInterval
(
gadget
.
property_dict
.
timer
);
}
gadget
.
property_dict
.
timer
=
setInterval
(
function
(){
var
hash
=
window
.
location
.
toString
().
split
(
'
#
'
)[
1
];
if
(
hash
.
indexOf
(
'
page=resource_view
'
)
<
0
)
{
console
.
log
(
hash
+
"
KEY=
"
+
gadget
.
property_dict
.
document_key
);
if
(
hash
.
indexOf
(
'
page=resource_view
'
)
<
0
||
hash
.
indexOf
(
gadget
.
property_dict
.
document_key
)
<
0
)
{
clearInterval
(
gadget
.
property_dict
.
timer
);
return
;
}
...
...
@@ -353,80 +414,7 @@
.
push
(
function
()
{
return
gadget
.
property_dict
.
render_deferred
.
promise
;
})
.
push
(
function
()
{
date_window
=
getDateWindow
(
gadget
.
property_dict
.
mem_data
.
data
);
return
gadget
.
property_dict
.
graph_mem_used
.
render
(
gadget
.
property_dict
.
mem_data
.
data
.
join
(
'
\n
'
),
{
xlabel
:
'
<span class="graph-label"><i class="fa fa-area-chart"></i> Memory used (Mo)</span>
'
,
labelsDivStyles
:
{
'
textAlign
'
:
'
right
'
},
legend
:
'
always
'
,
visibility
:
[
false
,
true
],
dateWindow
:
date_window
,
fillGraph
:
true
},
"
customInteractionModel
"
);
})
.
push
(
function
()
{
return
gadget
.
property_dict
.
graph_mem_percent
.
render
(
gadget
.
property_dict
.
mem_data
.
data
.
join
(
'
\n
'
),
{
xlabel
:
'
<span class="graph-label"><i class="fa fa-area-chart"></i> Memory used %</span>
'
,
labelsDivStyles
:
{
'
textAlign
'
:
'
right
'
},
legend
:
'
always
'
,
visibility
:
[
true
,
false
],
dateWindow
:
date_window
,
fillGraph
:
true
},
"
customInteractionModel
"
);
})
.
push
(
function
()
{
updateIOData
();
return
gadget
.
property_dict
.
graph_io_rw
.
render
(
gadget
.
property_dict
.
io_data_csv
,
{
xlabel
:
'
<span class="graph-label"><i class="fa fa-bar-chart"></i> IO RW KBytes/s</span>
'
,
labelsDivStyles
:
{
'
textAlign
'
:
'
right
'
},
legend
:
'
always
'
,
visibility
:
[
true
,
false
,
false
],
dateWindow
:
date_window
,
fillGraph
:
true
},
"
customInteractionModel
"
);
})
.
push
(
function
()
{
return
gadget
.
property_dict
.
graph_io_counter
.
render
(
gadget
.
property_dict
.
io_data_csv
,
{
xlabel
:
'
<span class="graph-label"><i class="fa fa-bar-chart"></i> IO RW counter/1000</span>
'
,
labelsDivStyles
:
{
'
textAlign
'
:
'
right
'
},
legend
:
'
always
'
,
visibility
:
[
false
,
true
,
false
],
dateWindow
:
date_window
,
fillGraph
:
true
},
"
customInteractionModel
"
);
})
.
push
(
function
()
{
return
gadget
.
property_dict
.
graph_disk_used
.
render
(
gadget
.
property_dict
.
io_data_csv
,
{
xlabel
:
'
<span class="graph-label"><i class="fa fa-pie-chart"></i> Disk Used (Mo)</span>
'
,
labelsDivStyles
:
{
'
textAlign
'
:
'
right
'
},
legend
:
'
always
'
,
visibility
:
[
false
,
false
,
true
],
dateWindow
:
date_window
,
fillGraph
:
true
},
"
customInteractionModel
"
);
})
.
push
(
function
()
{
/**.push(function () {
return gadget.property_dict.graph_cpu.render(
gadget.property_dict.process_data.data.join('\n'),
{
...
...
@@ -444,7 +432,6 @@
label_list = label_list.slice(1); // remove date column
return gadget.property_dict.graph_cpu.getColors()
.push(function (color_list) {
//return promise_list.push(renderGraphLabel(gadget, color_list, label_list, element));
var label_content,
name_list = [],
i;
...
...
@@ -462,9 +449,6 @@
});
gadget.property_dict.element.querySelector(".ui-panel-overview ." + element + " .ui-grid-span-1")
.innerHTML = label_content;
/*return RSVP.all([
$(gadget.property_dict.element.querySelectorAll("[type=checkbox]"))
.checkboxradio()]);*/
return $(gadget.property_dict.element.querySelectorAll("[data-role=controlgroup]"))
.controlgroup().controlgroup("refresh");
});
...
...
@@ -492,6 +476,12 @@
}
RSVP.all(promise_list);
return updateGraphTimer();
})**/
.
push
(
function
()
{
return
updateGraph
();
})
.
push
(
function
()
{
return
updateGraphTimer
();
});
});
...
...
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_resource_view_js.xml
View file @
041bd35c
...
...
@@ -239,7 +239,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
961.
22271.22355.17766
</string>
</value>
<value>
<string>
961.
61208.24795.20087
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -257,7 +257,7 @@
</tuple>
<state>
<tuple>
<float>
1504
086036.21
</float>
<float>
1504
801600.39
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_software_instance_view_html.html
View file @
041bd35c
...
...
@@ -140,7 +140,7 @@
<div
class=
"graph-full"
>
<div
class=
"signal ui-content-hidden"
></div>
<h2><i
class=
"fa fa-line-chart"
aria-hidden=
"true"
></i>
<strong>
Promises result progression
</strong></h2>
<div
data-gadget-url=
"gadget_
erp5_
graph.html"
data-gadget-scope=
"graph_gadget"
class=
"graph graph-medium "
></div>
<div
data-gadget-url=
"gadget_
field_graph_dy
graph.html"
data-gadget-scope=
"graph_gadget"
class=
"graph graph-medium "
></div>
</div>
<div
class=
"promise-list"
>
</div>
...
...
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_software_instance_view_html.xml
View file @
041bd35c
...
...
@@ -246,7 +246,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
961.
16513.57050.1211
</string>
</value>
<value>
<string>
961.
59699.24642.30873
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -264,7 +264,7 @@
</tuple>
<state>
<tuple>
<float>
150
2377991.75
</float>
<float>
150
4711023.3
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_software_instance_view_js.js
View file @
041bd35c
...
...
@@ -310,18 +310,56 @@
"
Date, Success, Error, Warning
"
,
new
Date
()
+
"
,0,0,0
"
],
data
=
element_dict
.
data
||
promise_data
;
data
=
element_dict
.
data
||
promise_data
,
data_list
=
[],
line_list
,
i
;
data_list
.
push
({
value_dict
:
{
"
0
"
:
[],
"
1
"
:
[]},
type
:
"
scatter
"
,
axis_mapping_id_dict
:
{
"
1
"
:
"
1_1
"
},
title
:
"
promises success counter
"
});
data_list
.
push
({
value_dict
:
{
"
0
"
:
[],
"
1
"
:
[]},
type
:
"
scatter
"
,
axis_mapping_id_dict
:
{
"
1
"
:
"
1_2
"
},
title
:
"
promises error counter
"
});
for
(
i
=
1
;
i
<
data
.
length
;
i
+=
1
)
{
line_list
=
data
[
i
].
split
(
'
,
'
);
data_list
[
0
].
value_dict
[
"
0
"
].
push
(
line_list
[
0
]);
data_list
[
0
].
value_dict
[
"
1
"
].
push
(
line_list
[
1
]);
// XXX repeating date entry
data_list
[
1
].
value_dict
[
"
0
"
].
push
(
line_list
[
0
]);
data_list
[
1
].
value_dict
[
"
1
"
].
push
(
line_list
[
2
]);
}
$
(
"
.graph-full .signal
"
).
addClass
(
"
ui-content-hidden
"
);
return
gadget
.
state
.
graph_gadget
.
render
(
data
.
join
(
'
\n
'
),
{
ylabel
:
'
<span class="graph-label"><i class="fa fa-bar-chart"></i> Success/Failure count</span>
'
,
legend
:
'
always
'
,
labelsDivStyles
:
{
'
textAlign
'
:
'
right
'
}
return
gadget
.
state
.
graph_gadget
.
render
({
value
:{
data
:
data_list
,
layout
:
{
axis_dict
:
{
"
0
"
:
{
"
title
"
:
"
Success/Failure counter
"
,
"
scale_type
"
:
"
linear
"
,
"
value_type
"
:
"
date
"
},
"
customInteractionModel
"
);
"
1_1
"
:
{
"
title
"
:
"
Promises success counter
"
,
"
position
"
:
"
left
"
},
"
1_2
"
:
{
"
title
"
:
"
Promises error counter
"
,
"
position
"
:
"
left
"
}
},
title
:
"
Success/Failure counter
"
}
}
});
});
//return RSVP.all(promise_list);
});
...
...
bt5/erp5_web_monitoring/PathTemplateItem/web_page_module/gadget_monitoring_software_instance_view_js.xml
View file @
041bd35c
...
...
@@ -246,7 +246,7 @@
</item>
<item>
<key>
<string>
serial
</string>
</key>
<value>
<string>
961.
21935.10239.6381
2
</string>
</value>
<value>
<string>
961.
59703.38142.4403
2
</string>
</value>
</item>
<item>
<key>
<string>
state
</string>
</key>
...
...
@@ -264,7 +264,7 @@
</tuple>
<state>
<tuple>
<float>
150
2465314.29
</float>
<float>
150
4711794.22
</float>
<string>
UTC
</string>
</tuple>
</state>
...
...
bt5/erp5_web_monitoring/bt/dependency_list
View file @
041bd35c
erp5_web
erp5_web_renderjs_ui
erp5_officejs
\ No newline at end of file
bt5/erp5_web_monitoring/bt/template_keep_last_workflow_history_only_path_list
View file @
041bd35c
web_page_module/Notify_min_js
web_page_module/rjs_gadget_erp5_css
web_page_module/gadget_erp5_graph_*
web_page_module/gadget_monitoring_*
web_page_module/jquery.magnific-popup.min.js
web_page_module/jsen_json_validator_js
web_page_module/magnific-popup.css
web_page_module/monitoring_jio_*
web_page_module/rjs_gadget_erp5_css
web_page_module/rjs_gadget_erp5_js
web_page_module/rjs_gadget_global_js
web_page_module/rjs_gadget_monitoring_html
...
...
bt5/erp5_web_monitoring/bt/template_keep_workflow_path_list
View file @
041bd35c
web_page_module/Notify_min_js
web_page_module/rjs_gadget_erp5_css
web_page_module/gadget_erp5_graph_*
web_page_module/gadget_monitoring_*
web_page_module/jquery.magnific-popup.min.js
web_page_module/jsen_json_validator_js
web_page_module/magnific-popup.css
web_page_module/monitoring_jio_*
web_page_module/rjs_gadget_erp5_css
web_page_module/rjs_gadget_erp5_js
web_page_module/rjs_gadget_global_js
web_page_module/rjs_gadget_monitoring_html
...
...
bt5/erp5_web_monitoring/bt/template_path_list
View file @
041bd35c
web_page_module/Notify_min_js
web_page_module/gadget_erp5_graph_*
web_page_module/gadget_monitoring_*
web_page_module/jquery.magnific-popup.min.js
web_page_module/jsen_json_validator_js
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment