Skip to content
This repository was archived by the owner on Sep 2, 2025. It is now read-only.

Commit 1a00d79

Browse files
committed
Initial version of Docker Monitoring using EPA Rest plugin interface
0 parents  commit 1a00d79

File tree

16 files changed

+1914
-0
lines changed

16 files changed

+1914
-0
lines changed
Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,36 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<classpath>
3+
<classpathentry kind="src" output="target/classes" path="src/main/java">
4+
<attributes>
5+
<attribute name="optional" value="true"/>
6+
<attribute name="maven.pomderived" value="true"/>
7+
</attributes>
8+
</classpathentry>
9+
<classpathentry excluding="**" kind="src" output="target/classes" path="src/main/resources">
10+
<attributes>
11+
<attribute name="maven.pomderived" value="true"/>
12+
</attributes>
13+
</classpathentry>
14+
<classpathentry kind="src" output="target/test-classes" path="src/test/java">
15+
<attributes>
16+
<attribute name="optional" value="true"/>
17+
<attribute name="maven.pomderived" value="true"/>
18+
</attributes>
19+
</classpathentry>
20+
<classpathentry excluding="**" kind="src" output="target/test-classes" path="src/test/resources">
21+
<attributes>
22+
<attribute name="maven.pomderived" value="true"/>
23+
</attributes>
24+
</classpathentry>
25+
<classpathentry kind="con" path="org.eclipse.jdt.launching.JRE_CONTAINER/org.eclipse.jdt.internal.debug.ui.launcher.StandardVMType/JavaSE-1.6">
26+
<attributes>
27+
<attribute name="maven.pomderived" value="true"/>
28+
</attributes>
29+
</classpathentry>
30+
<classpathentry kind="con" path="org.eclipse.m2e.MAVEN2_CLASSPATH_CONTAINER">
31+
<attributes>
32+
<attribute name="maven.pomderived" value="true"/>
33+
</attributes>
34+
</classpathentry>
35+
<classpathentry kind="output" path="target/classes"/>
36+
</classpath>

docker-monitoring-eparest/.project

Lines changed: 23 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,23 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<projectDescription>
3+
<name>docker-monitoring-eparest</name>
4+
<comment></comment>
5+
<projects>
6+
</projects>
7+
<buildSpec>
8+
<buildCommand>
9+
<name>org.eclipse.jdt.core.javabuilder</name>
10+
<arguments>
11+
</arguments>
12+
</buildCommand>
13+
<buildCommand>
14+
<name>org.eclipse.m2e.core.maven2Builder</name>
15+
<arguments>
16+
</arguments>
17+
</buildCommand>
18+
</buildSpec>
19+
<natures>
20+
<nature>org.eclipse.jdt.core.javanature</nature>
21+
<nature>org.eclipse.m2e.core.maven2Nature</nature>
22+
</natures>
23+
</projectDescription>
Lines changed: 50 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,50 @@
1+
# Name or IP address of the docker server host.
2+
# This parameter is required. There is no default value.
3+
docker.hostname=bhaab01-U148604
4+
5+
# Port where docker application is listening. This parameter is required.
6+
# There is no default value.
7+
docker.port=4243
8+
9+
# Data collection interval in seconds. Value should be greater than 5.
10+
# If not, the docker collector will reset this to 60
11+
# This parameter is required. There is no default value.
12+
docker.interval.seconds=15
13+
14+
# Hostname or IP address of APM API server. This parameter is required.
15+
# There is no default value.
16+
apm.apihost=bhaab01-U148604
17+
# Port for APM API server. This parameter is required.
18+
# There is no default value.
19+
apm.apiport=8080
20+
21+
#Logging properties
22+
#This program uses JDK Logging
23+
#Any JDK logging properties can be placed in this file.
24+
#Please review Java documentation for more information
25+
#http://docs.oracle.com/javase/7/docs/api/java/util/logging/package-summary.html
26+
27+
#Types of handlers to use
28+
handlers=java.util.logging.FileHandler, java.util.logging.ConsoleHandler
29+
.level=FINEST
30+
31+
#documentation for FileHandler
32+
#NOTE:If you specify a directory, that folder must exist before logging can occur
33+
#JDK logging does not dynamically create directories.
34+
#java.util.logging.FileHandler.pattern = ./Logs/log%g.%u.txt
35+
36+
37+
java.util.logging.ConsoleHandler.level=INFO
38+
java.util.logging.FileHandler.level=FINEST
39+
40+
#formatter to use
41+
#console formatter defaults to simple
42+
#file formatter defaults to xml
43+
java.util.logging.FileHandler.formatter=java.util.logging.SimpleFormatter
44+
45+
#size of each log file in bytes
46+
java.util.logging.FileHandler.limit=10000
47+
48+
#max number of rolling log files
49+
java.util.logging.FileHandler.count=10
50+
java.util.logging.FileHandler.append=true
Lines changed: 217 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,217 @@
1+
<?xml version="1.0" encoding="UTF-8"?>
2+
<TypeViewerSet xmlns="wily.typeviews" xmlns:its="http://www.w3.org/2005/11/its" namespace="wily.apm.docker" version="2.0">
3+
4+
5+
<TypeViewer id="Docker Overview" supported-items-specifier="Docker" tab-order="0">
6+
<Title its:translate="yes">Overview</Title>
7+
8+
<Panel layout="BorderLayout">
9+
10+
<MetricDataTable constraint="Center" show-bottom-graph="true">
11+
<Title its:translate="yes">Container Details</Title>
12+
13+
<Column content-type="LastPrefixSegment" relative-width="1" segment-offset="1">
14+
<Title its:translate="yes">HostName</Title>
15+
16+
</Column>
17+
<Column content-type="LastPrefixSegment" relative-width="1" segment-offset="0">
18+
<Title its:translate="yes">Container Name</Title>
19+
20+
</Column>
21+
22+
23+
<Column content-type="StringValue" relative-specifier="\|[^\|]*\|[^\|]*:Image" relative-width="1">
24+
<Title its:translate="yes">Image Name</Title>
25+
26+
</Column>
27+
28+
<Column content-type="StringValue" relative-specifier="\|[^\|]*\|[^\|]*:CPU % \(string\)" relative-width="1">
29+
<Title its:translate="yes">CPU Utilization (%)</Title>
30+
31+
</Column>
32+
<Column content-type="StringValue" relative-specifier="\|[^\|]*\|[^\|]*:Memory % \(string\)" relative-width="1">
33+
<Title its:translate="yes">Memory Utilization (%)</Title>
34+
35+
</Column>
36+
37+
<Column content-type="NumericalValue" danger-threshold="0" relative-specifier="\|[^\|]*\|[^\|]*:Errors Sent" relative-width="1">
38+
<Title its:translate="yes">Errors Sent</Title>
39+
40+
</Column>
41+
42+
<Column content-type="NumericalValue" danger-threshold="0" relative-specifier="\|[^\|]*\|[^\|]*:Dropped Packets during Sent" relative-width="1">
43+
<Title its:translate="yes">Packets Dropped</Title>
44+
45+
</Column>
46+
47+
<Column content-type="StringValue" relative-specifier="\|[^\|]*\|[^\|]*:Status" relative-width="1">
48+
<Title its:translate="yes">Status</Title>
49+
50+
</Column>
51+
52+
</MetricDataTable>
53+
</Panel>
54+
</TypeViewer>
55+
56+
<TypeViewer id="Docker Overview" supported-items-specifier="Docker\|[^\|]*\|[^\|]*" tab-order="0">
57+
<Title its:translate="yes">Overview</Title>
58+
<Panel layout="BorderLayout">
59+
<Panel columns="1" constraint="North" layout="GridLayout" rows="6">
60+
61+
62+
<LiveMetricValueLabel relative-metric=":Names">
63+
<Title its:translate="yes">Container Name: </Title>
64+
</LiveMetricValueLabel>
65+
66+
<LiveMetricValueLabel relative-metric=":Id">
67+
<Title its:translate="yes">Docker ID: </Title>
68+
</LiveMetricValueLabel>
69+
70+
71+
<LiveMetricValueLabel relative-metric=":Image">
72+
<Title its:translate="yes">Image Name: </Title>
73+
</LiveMetricValueLabel>
74+
75+
<LiveMetricValueLabel relative-metric=":Command">
76+
<Title its:translate="yes">Startup Command: </Title>
77+
</LiveMetricValueLabel>
78+
79+
<LiveMetricValueLabel relative-metric=":Memory (in MB)">
80+
<Title its:translate="yes">Memory Usage (in MB): </Title>
81+
</LiveMetricValueLabel>
82+
<LiveMetricValueLabel relative-metric=":Status">
83+
<Title its:translate="yes">Current Status: </Title>
84+
</LiveMetricValueLabel>
85+
</Panel>
86+
87+
<!-- -->
88+
89+
90+
<Panel columns="2" constraint="Center" layout="GridLayout" rows="3">
91+
<Graph relative-specifier=":CPU % \(rounded\)">
92+
<Title its:translate="yes">CPU Utilization (%)</Title>
93+
94+
</Graph>
95+
<Graph relative-specifier=":Memory % \(rounded\)">
96+
<Title its:translate="yes">Memory Utilization (%)</Title>
97+
98+
</Graph>
99+
<Graph relative-specifier=":Dropped Packets .*">
100+
<Title its:translate="yes">Dropped Packets</Title>
101+
102+
</Graph>
103+
104+
<Graph relative-specifier=":Errors .*">
105+
<Title its:translate="yes">Errors</Title>
106+
107+
</Graph>
108+
109+
<Graph relative-specifier=":Bytes (Sent|Received)">
110+
<Title its:translate="yes">Bytes Sent/Received</Title>
111+
112+
</Graph>
113+
<Graph relative-specifier=":Packets (Sent|Received)">
114+
<Title its:translate="yes">Packets Sent/Received</Title>
115+
116+
</Graph>
117+
</Panel>
118+
119+
</Panel>
120+
</TypeViewer>
121+
122+
123+
<TypeViewer id="Docker Overview" supported-items-specifier="Docker\|[^\|]*" tab-order="0">
124+
<Title its:translate="yes">Overview</Title>
125+
126+
<Panel layout="BorderLayout">
127+
<!-- <TabbedPane constraint="Center">
128+
<Panel layout="BorderLayout" title="Overview"> -->
129+
<Panel border="Etched" constraint="North" layout="GridLayout" rows="1">
130+
<Panel layout="GridLayout" rows="2">
131+
<LiveMetricValueLabel relative-metric=":Name">
132+
<Title its:translate="yes">Host Name: </Title>
133+
</LiveMetricValueLabel>
134+
135+
<LiveMetricValueLabel relative-metric=":DockerRootDir">
136+
<Title its:translate="yes">Docker Root Directory: </Title>
137+
</LiveMetricValueLabel>
138+
139+
<LiveMetricValueLabel relative-metric=":KernelVersion">
140+
<Title its:translate="yes">Kernel Version: </Title>
141+
</LiveMetricValueLabel>
142+
143+
<LiveMetricValueLabel relative-metric=":No of CPU">
144+
<Title its:translate="yes">Total CPU: </Title>
145+
</LiveMetricValueLabel>
146+
147+
<LiveMetricValueLabel relative-metric=":OperatingSystem">
148+
<Title its:translate="yes">OS: </Title>
149+
</LiveMetricValueLabel>
150+
151+
<LiveMetricValueLabel relative-metric=":Total Images">
152+
<Title its:translate="yes">Total Images: </Title>
153+
</LiveMetricValueLabel>
154+
155+
<LiveMetricValueLabel relative-metric=":Total Container">
156+
<Title its:translate="yes">Total Container: </Title>
157+
</LiveMetricValueLabel>
158+
<LiveMetricValueLabel relative-metric=":Total Memory">
159+
<Title its:translate="yes">Total Memory (in MB): </Title>
160+
</LiveMetricValueLabel>
161+
</Panel>
162+
</Panel>
163+
<Panel layout="GridLayout" rows="2">
164+
<MetricDataTable constraint="Center" show-bottom-graph="true">
165+
<Title its:translate="yes">Container Details</Title>
166+
167+
<Column content-type="LastPrefixSegment" relative-width="1" segment-offset="0">
168+
<Title its:translate="yes">Container Name</Title>
169+
170+
</Column>
171+
<Column content-type="StringValue" relative-specifier="\|[^\|]*:Image" relative-width="1">
172+
<Title its:translate="yes">Image Name</Title>
173+
174+
</Column>
175+
176+
<Column content-type="StringValue" relative-specifier="\|[^\|]*:CPU % \(string\)" relative-width="1">
177+
<Title its:translate="yes">CPU Utilization (%)</Title>
178+
179+
</Column>
180+
<Column content-type="StringValue" relative-specifier="\|[^\|]*:Memory % \(string\)" relative-width="1">
181+
<Title its:translate="yes">Memory Utilization (%)</Title>
182+
183+
</Column>
184+
185+
<Column content-type="NumericalValue" danger-threshold="0" relative-specifier="\|[^\|]*:Errors Sent" relative-width="1">
186+
<Title its:translate="yes">Errors Sent</Title>
187+
188+
</Column>
189+
190+
<Column content-type="NumericalValue" danger-threshold="0" relative-specifier="\|[^\|]*:Dropped Packets during Sent" relative-width="1">
191+
<Title its:translate="yes">Packets Dropped</Title>
192+
193+
</Column>
194+
195+
<Column content-type="StringValue" relative-specifier="\|[^\|]*:Status" relative-width="1">
196+
<Title its:translate="yes">Status</Title>
197+
198+
</Column>
199+
200+
</MetricDataTable>
201+
202+
<Panel columns="2" constraint="Center" layout="GridLayout" rows="1">
203+
<Graph relative-specifier="(:Data Space Total.*|:Data Space Used.*)">
204+
<Title its:translate="yes">Data Space Total vs Used (In GB)</Title>
205+
206+
</Graph>
207+
<Graph relative-specifier="(:Running Container.*|:Stopped Container.*)">
208+
<Title its:translate="yes">Running vs Stopped Container</Title>
209+
210+
</Graph>
211+
</Panel>
212+
</Panel>
213+
214+
215+
</Panel>
216+
</TypeViewer>
217+
</TypeViewerSet>

0 commit comments

Comments
 (0)