1 .. This work is licensed under a Creative Commons Attribution
2 .. 4.0 International License.
3 .. http://creativecommons.org/licenses/by/4.0
8 .. container:: paragraph
10 Here is an example running Monitoring Gui on a Native Windows Computer.
15 .. container:: paragraph
17 create and run docker images about the following tar packages
19 .. container:: listingblock
21 .. container:: content
27 docker load-i mariadb.tar
29 docker load-i apex.tar
31 docker load-i xacml.tar
33 .. container:: paragraph
35 download latest source from gerrit and create tar by command
40 tar example example.tar
42 .. container:: paragraph
44 download drools-pdp latest source from gerrit
46 .. container:: paragraph
48 prepare eclipse for starting drools-pdp
50 .. container:: paragraph
52 config drools-pdp dependency in eclipse
56 - create config folder inside drools-pdp\policy-management, copy feature-lifecycle.properties into this folder
58 .. container:: imageblock
60 .. container:: content
62 |Create the Folder Arc|
64 .. container:: content
69 lifecycle.pdp.group=${envd:POLICY_PDP_PAP_GROUP:defaultGroup}
71 dmaap.source.topics=POLICY-PDP-PAP
72 dmaap.sink.topics=POLICY-PDP-PAP
74 dmaap.source.topics.POLICY-PDP-PAP.servers=localhost:3904
75 dmaap.source.topics.POLICY-PDP-PAP.managed=false
77 dmaap.sink.topics.POLICY-PDP-PAP.servers=localhost:3904
78 dmaap.sink.topics.POLICY-PDP-PAP.managed=false
80 - update run property "classpath" of "drools.system.Main" in Eclipse
82 .. container:: imageblock
84 .. container:: content
88 .. container:: imageblock
90 .. container:: content
92 |Lifecycle classpath setting|
94 Prepare Postman for sending REST request to components during demo
95 ##################################################################
97 .. container:: paragraph
99 import "demo.postman_collection.json" into PostMan
101 .. container:: imageblock
103 .. container:: content
105 |Import JSON in PostMan|
107 .. container:: content
109 "demo.postman_collection.json", ":download:`link <demo.postman_collection.json>`"
111 .. container:: paragraph
113 clean docker environment
118 # docker rm $(docker ps-aq)
122 .. container:: paragraph
124 docker compose start mariadb and message-router. Mariadb must be started in a seperate console because it needs several seconds to finish startup, and other docker startups depends on this
128 .. container:: content
133 # docker-compose up -d mariadb message-router
135 .. container:: paragraph
137 docker compose start other components API, PAP, APEX-PDP, XACML-PDP
141 .. container:: content
146 # docker-compose up -d pdp xacml pap api
148 .. container:: paragraph
150 start "drools.system.Main" in eclipse
152 .. container:: paragraph
154 verify PDPs are registered into the database
158 - get pdp lists in database
160 .. container:: paragraph
162 curl --location --request GET 'http://localhost:7979/policy/pap/v1/pdps' --user 'healthcheck:zb!XztG34' | json_pp
166 .. container:: paragraph
168 curl --location --request GET 'http://localhost:7979/policy/pap/v1/pdps/statistics/' --user 'healthcheck:zb!XztG34' | json_pp
172 - start PAP statistics monitoring GUI
174 .. container:: paragraph
176 java -jar client/client-monitoring/target/client-monitoring-uber 2.2.0-SNAPSHOT.jar
178 - open monitor in browser
180 .. container:: paragraph
184 .. container:: paragraph
188 .. container:: imageblock
190 .. container:: content
194 .. container:: paragraph
198 .. container:: imageblock
200 .. container:: content
202 |Set up pap parameter|
204 .. container:: paragraph
208 .. container:: imageblock
210 .. container:: content
214 .. container:: paragraph
216 no Engine Worker started, we can only see healthcheck result when we click on the instance APEX statistics
218 .. container:: imageblock
220 |No engine worker started|
222 .. container:: paragraph
226 .. container:: imageblock
230 .. container:: paragraph
232 use PostMan to send request to API to create policy type/create policy/ deploy policy
234 .. container:: content
239 API_Create Policy Type
243 .. container:: paragraph
245 now APEX PDP statistics data includes engine worker statistics, and shows the monitoring GUI updating automatically (every 2 minutes)
247 .. container:: imageblock
249 |Engine worker started|
251 .. container:: paragraph
253 use PostMan to send a request to DMAAP, add one xacml-pdp statistics message manually, show that the monitoring GUI updates the PostMan API
257 .. container ::content
263 .. container:: paragraph
265 xacml-pdp statistics update
267 .. container:: imageblock
269 |Update XACML statistics|
274 .. |Create the Folder Arc| image:: ./images/CreateFolder.png
275 .. |Update run Property| image:: ./images/ClassPathRunProperty.png
276 .. |Lifecycle classpath setting| image:: ./images/ClassPathSetting.png
277 .. |Import JSON in PostMan| image:: ./images/ImportPostmanJson.png
278 .. |Pap parameter| image:: ./images/PapParameter.png
279 .. |Set up pap parameter| image:: ./images/PapInputParameter.png
280 .. |Fetch Pdp Lists| image:: ./images/FetchPdpLists.png
281 .. |No engine worker started| image:: ./images/NoEngineWorker.png
282 .. |XACML statistics| image:: ./images/XACMLstatistics.png
283 .. |Engine worker started| image:: ./images/PDPstatistics.png
284 .. |Update XACML statistics| image:: ./images/UpdateStatistics.png