... |
... |
@@ -6,86
+6,84 @@ |
6 |
6 |
|
7 |
7 |
The beans are registered under the following names: |
8 |
8 |
|
9 |
|
-; Frontend-Server |
10 |
|
-: de.xima.fc:type=FSMonitor,qualifier=<contextName> |
11 |
|
-; Master-Server |
12 |
|
-: de.xima.fc:type=MSMonitor,qualifier=<contextName> |
13 |
13 |
|
14 |
|
-The context name is the context name of the applications. It is necessary for supporting parallel installations of {{formcycle/}} on a server. By default, the context name is the name of {{formcycle/}}'s WAR file, but it can be changed by modifying the context name parameter //XFC_CONTEXT_NAME// within the //web.xml//. |
|
10 |
+* {{litem title="{{fserver/~}~}"}}de.xima.fc:type=FSMonitor,qualifier=<contextName> {{/litem}} |
|
11 |
+* {{litem title="{{mserver/~}~}"}} de.xima.fc:type=MSMonitor,qualifier=<contextName> {{/litem}} |
15 |
15 |
|
16 |
|
-When starting the server, the current context name is logged. You may need to modify the [[logging settings>>doc:.UserInterface.Logging]] to see the name. There are different monitoring attributes available for each bean, which are listed below. |
|
13 |
+The context name is the context name of the applications. It is necessary for supporting parallel installations of {{formcycle/}} on a server. By default, the context name is the name of {{formcycle/}}'s WAR file, but it can be changed by [[modifying the context name parameter>>doc:Tomcat Einstellungen]]. |
17 |
17 |
|
18 |
|
-{{table dataTypeAlpha="0" preSort="0-asc" caption="Overview of the settings for MSMonitor (master server)"}} |
|
15 |
+When starting the server, the current context name is logged. You may need to modify the [[logging settings>>doc:LogginMenue]] to see the name. There are different monitoring attributes available for each bean, which are listed below. |
|
16 |
+ |
|
17 |
+=== {{mserver/}} (MSMonitor) === |
|
18 |
+ |
|
19 |
+{{table caption="Overview of the settings for MSMonitor" dataTypeAlpha="0" preSort="0-asc"}} |
19 |
19 |
|=Key|=Description|=Possible options |
20 |
|
-|running|Whether the {{mserver/}} has been started successfully.|true/false |
21 |
|
-|db_connected|Whether the {{mserver/}} could establish a connection to the database.|true/false |
22 |
|
-|fs_connected|A map of the names of all {{fserver number="plural"/}} and whether they are connected to this master server|__Key:__ <serverName> |
23 |
|
-__Return value:__ true/false |
24 |
|
-|fs_active|A map of the names of all {{fserver number="plural"/}} and whether this master server should attempt to establish a connection to that server automatically.|__Key:__ <serverName> |
25 |
|
-__Return value:__ true/false |
26 |
|
-|fs_status|A map of the names of all {{fserver number="plural"/}} and the connection status of that server.|__Key:__ <serverName> |
27 |
|
-__Return values:__ CONNECTED, NOT_CONNECTED, ERROR, RECONNECTING, DISCONNECTING , CONNECTING, AUTHENTICATING, WAIT_FOR_CONNECTION |
|
21 |
+|running|Whether the {{mserver/}} has been started successfully.|true ~| false |
|
22 |
+|db_connected|Whether the {{mserver/}} could establish a connection to the database.| true ~| false |
|
23 |
+|fs_connected|A map of the names of all {{fserver number="plural"/}} and whether they are connected to this {{mserver/}}|<serverName> : true ~| false |
|
24 |
+|fs_active|A map of the names of all {{fserver number="plural"/}} and whether this {{mserver/}} should attempt to establish a connection to that server automatically.|<serverName> : true ~| false |
|
25 |
+|fs_status|A map of the names of all {{fserver number="plural"/}} and the connection status of that server.|<serverName> : CONNECTED ~| NOT_CONNECTED ~| ERROR ~| RECONNECTING ~| DISCONNECTING ~| CONNECTING ~| AUTHENTICATING ~| WAIT_FOR_CONNECTION |
28 |
28 |
|fs_disconnected_count|The number of {{fserver number="plural"/}} not connected to this {{mserver/}}|A non-negative number. |
29 |
29 |
|fs_connected_count|The number of {{fserver number="plural"/}} connected to this {{mserver/}}|A non-negative number. |
30 |
|
-|failed_login_count|For each login name, the login cache contains how many times a user made a failed login attempt with that login name. This is the number of login names in that cache.|A non-negative number. |
31 |
|
-|connect_frontendserver_by_name|Triggers a connection to the frontend server by name.|__Key:__ <serverName>, true/false to trigger reconnect always (no matter if there is a connection) |
32 |
|
-__Return value:__ true/false |
33 |
|
-|connect_frontendserver_by_id|Triggert eine Verbindung zum Frontend-Servers per ID an.|__Key:__ <serverName>, true/false to trigger reconnect always (no matter if there is a connection) |
34 |
|
-__Return value:__ true/false |
35 |
35 |
{{/table}} |
36 |
36 |
|
37 |
|
-{{table dataTypeAlpha="0" preSort="0-asc" caption="Overview of the settings for FSMonitor (frontend server)"}} |
|
30 |
+=== {{fserver/}} (FSMonitor) === |
|
31 |
+ |
|
32 |
+{{table caption="Overview of the settings for FSMonitor" dataTypeAlpha="0" preSort="0-asc"}} |
38 |
38 |
|=Key|=Description|=Possible options |
39 |
|
-|running|Whether the {{fserver/}} has been started successfully.|true, false |
40 |
|
-|connected|Whether this {{fserver/}} is connected to a {{mserver/}}.|true, false |
41 |
|
-|failed_login_count|For each login name, the login cache contains how many times a user made a failed login attempt with that login name. This is the number of login names in that cache.|A non-negative number. |
42 |
|
-|status|The connection status of this {{fserver/}}.|CONNECTED, NOT_CONNECTED, ERROR, RECONNECTING, DISCONNECTING, CONNECTING, AUTHENTICATING, WAIT_FOR_CONNECTION |
43 |
|
-|restart|xxx|None |
44 |
|
-{{/table}} |
|
34 |
+|running|Whether the {{fserver/}} has been started successfully.|true ~| false |
|
35 |
+|connected|Whether this {{fserver/}} is connected to a {{mserver/}}.|true ~| false |
|
36 |
+|status|The connection status of this {{fserver/}}.|CONNECTED ~| NOT_CONNECTED ~| ERROR ~| RECONNECTING ~| DISCONNECTING ~| CONNECTING ~| AUTHENTICATING ~| WAIT_FOR_CONNECTION |
45 |
45 |
|
46 |
46 |
== JSON REST API == |
47 |
47 |
|
48 |
|
-The JSON interface has been removed since version 6.0.0 in favor of a separate Jolokia installation. The beans used for monitoring are still available. The JSON interface of the monitoring allowed read-only access and could only be called via the application server (localhost/127.0.0.1). If this is wanted, the access would have to be configured within the Jolokia application, more information can be found [[here>>https://jolokia.org/reference/html/security.html#d0e3128||rel="noopener noreferrer" target="_blank"]]. |
|
40 |
+The monitoring beans can also be accessed via a JSON REST API. It can be accessed as follows: |
49 |
49 |
|
50 |
|
-A possible call, after installation of Jolokia, looks like the following: |
51 |
|
- |
52 |
52 |
{{info}} |
53 |
|
-[[http:~~/~~/localhost/jolokia/read/de.xima.fc:type=MSMonitor,qualifier=formcycle>>http://localhost/jolokia/read/de.xima.fc:type=MSMonitor,qualifier=formcycle]] |
|
43 |
+http://localhost/formcycle/monitoring/read/de.xima.fc:type=MSMonitor,qualifier=formcycle |
54 |
54 |
{{/info}} |
55 |
55 |
|
56 |
|
-(% class="wikigeneratedid" id="HJSONresponse" %) |
57 |
|
-JSON response: |
|
46 |
+=== JSON response === |
58 |
58 |
|
59 |
59 |
{{code language="JSON"}} |
60 |
60 |
{ |
61 |
|
- "request": { |
62 |
|
- "mbean": "de.xima.fc:qualifier=formcycle,type=MSMonitor", |
63 |
|
- "type": "read" |
64 |
|
- }, |
65 |
|
- "value": { |
66 |
|
- "running": true, |
67 |
|
- "failed_login_count": 0, |
68 |
|
- "fs_active": { |
69 |
|
- "localhost": true |
70 |
|
- }, |
71 |
|
- "db_connected": true, |
72 |
|
- "fs_connected_count": 1, |
73 |
|
- "fs_connected": { |
74 |
|
- "localhost": true |
75 |
|
- }, |
76 |
|
- "fs_disconnected_count": 0, |
77 |
|
- "fs_status": { |
78 |
|
- "localhost": "CONNECTED" |
79 |
|
- } |
80 |
|
- }, |
81 |
|
- "timestamp": 1579186291, |
82 |
|
- "status": 200 |
|
50 |
+"timestamp":1440603508, |
|
51 |
+"status":200, |
|
52 |
+"request":{ |
|
53 |
+ "mbean":"de.xima.fc:qualifier=formcycle,type=MSMonitor", |
|
54 |
+ "type":"read" |
|
55 |
+}, |
|
56 |
+"value":{ |
|
57 |
+ "fs_active":{ |
|
58 |
+ "sas":true, |
|
59 |
+ "localhost":false, |
|
60 |
+ "mko":true |
|
61 |
+ }, |
|
62 |
+ "fs_connected":{ |
|
63 |
+ "sas":false, |
|
64 |
+ "localhost":false, |
|
65 |
+ "mko":false |
|
66 |
+ }, |
|
67 |
+ "db_connected":true,"fs_status":{ |
|
68 |
+ "sas":"ERROR", |
|
69 |
+ "localhost":"NOT_CONNECTED", |
|
70 |
+ "mko":"ERROR" |
|
71 |
+ }, |
|
72 |
+ "fs_disconnected_count":3, |
|
73 |
+ "fs_connected_count":0, |
|
74 |
+ "running":true |
|
75 |
+ } |
83 |
83 |
} |
84 |
84 |
{{/code}} |
85 |
85 |
|
86 |
|
-(% class="wikigeneratedid" %) |
87 |
|
-More information about the integration of the framework [[Jolokia>>url:https://jolokia.org/||rel="__blank"]] and a more detailed documentation can be found [[here>>https://jolokia.org/reference/html/||rel="noopener noreferrer" target="_blank"]]. |
|
79 |
+=== URL === |
88 |
88 |
|
|
81 |
+The monitoring servlet is available as the sub resource {{code}}monitoring{{/code}} of the application context URL, eg. {{code}}http://localhost/formcycle/{{/code}}. This servlet processes the monitoring bean and provides the monitoring info as JSON. The servlet makes use of the framework [[Jolokia>>url:https://jolokia.org/||rel="__blank"]]. Further servlet options provided by Jolokia are described on their [[documentation pages>url:https://jolokia.org/reference/html/||rel="__blank"]]. |
|
82 |
+ |
|
83 |
+{{warning}} |
|
84 |
+The JSON REST API only allow read-access, but no write-access. It is available only for the application server, eg. {{code}}localhost/127.0.0.1{{/code}}. |
|
85 |
+{{/warning}} |
|
86 |
+ |
89 |
89 |
== Nagios integration == |
90 |
90 |
|
91 |
91 |
The Nagios monitoring application may be used for reading and showing monitoring info as well by using the JSON REST API described above. This requires the Nagios plugin [[jmx4perl>>url:http://search.cpan.org/~~roland/jmx4perl/||rel="__blank"]] to be installed. A detailed installation instruction can be found on [[their website>>url:https://jolokia.org/tutorial.html||rel="__blank"]]. This allows querying the JSON REST API with the corresponding commands. |
... |
... |
@@ -97,7
+97,7 @@ |
97 |
97 |
{{/info}} |
98 |
98 |
|
99 |
99 |
{{panel title="Command" fullwidth="true" initial="hidden" triggerable="true"}} |
100 |
|
-{{code language="none"}} |
|
98 |
+{{code}} |
101 |
101 |
define command{ |
102 |
102 |
command_name check_jmx4perl |
103 |
103 |
command_line check_jmx4perl --url $ARG1$ --mbean $ARG2$ --attribute $ARG3$ $ARG4$ |
... |
... |
@@ -106,9
+106,9 @@ |
106 |
106 |
{{/panel}} |
107 |
107 |
|
108 |
108 |
{{panel title="Service definitions" fullwidth="true" initial="hidden" triggerable="true"}} |
109 |
|
-Querying the number of {{fserver number="plurar"/}} not connected to this {{mserver/}}. When there are any disconnected servers, a warning will be displayed. When there is more than one disconnected server, Nagios will treat this warning as critical.<br> |
110 |
|
-<br> |
111 |
|
-{{code language="none"}} |
|
107 |
+Querying the number of {{fserver number="plurar"/}} not connected to this {{mserver/}}. When there are any disconnected servers, a warning will be displayed. When there is more than one disconnected server, Nagios will treat this warning as critical. |
|
108 |
+ |
|
109 |
+{{code}} |
112 |
112 |
define service{ |
113 |
113 |
use generic-service |
114 |
114 |
host_name localhost |
... |
... |
@@ -119,7
+119,7 @@ |
119 |
119 |
{{/panel}} |
120 |
120 |
|
121 |
121 |
{{panel title="Querying the database connection status of the {{mserver/~}~}" fullwidth="true" initial="hidden" triggerable="true"}} |
122 |
|
-{{code language="none"}} |
|
120 |
+{{code}} |
123 |
123 |
define service{ |
124 |
124 |
use generic-service |
125 |
125 |
host_name localhost |
... |
... |
@@ -130,7
+130,7 @@ |
130 |
130 |
{{/panel}} |
131 |
131 |
|
132 |
132 |
{{panel title="Querying whether the {{fserver/~}~} localhost is connected to the {{mserver/~}~}" fullwidth="true" initial="hidden" triggerable="true"}} |
133 |
|
-{{code language="none"}} |
|
131 |
+{{code}} |
134 |
134 |
define service{ |
135 |
135 |
use generic-service |
136 |
136 |
host_name localhost |
... |
... |
@@ -141,7
+141,7 @@ |
141 |
141 |
{{/panel}} |
142 |
142 |
|
143 |
143 |
{{panel title="Querying the {{fserver/~}~} whether it is connected to a {{mserver/~}~}" fullwidth="true" initial="hidden" triggerable="true"}} |
144 |
|
-{{code language="none"}} |
|
142 |
+{{code}} |
145 |
145 |
define service{ |
146 |
146 |
use generic-service |
147 |
147 |
host_name localhost |
... |
... |
@@ -167,7
+167,7 @@ |
167 |
167 |
|
168 |
168 |
When Jolokia is run parallel to {{formcycle/}}, the connection to the {{fserver/}} //localhost// must be modified as follows: |
169 |
169 |
|
170 |
|
-{{code language="none"}} |
|
168 |
+{{code}} |
171 |
171 |
define service{ |
172 |
172 |
use generic-service |
173 |
173 |
host_name fc-test |
... |
... |
@@ -175,3
+175,4 @@ |
175 |
175 |
check_command check_jmx4perl!http://fc-test/jolokia/!de.xima.fc:type=MSMonitor,qualifier=formcycle!fs_connected!--path=localhost --string --critical 'false' |
176 |
176 |
} |
177 |
177 |
{{/code}} |
|
176 |
+{{/table}} |