| .. This work is licensed under a Creative Commons Attribution |
| .. 4.0 International License. |
| .. http://creativecommons.org/licenses/by/4.0 |
| |
| Using Monitoring Gui |
| -------------------- |
| |
| .. container:: paragraph |
| |
| Here is an example running Monitoring Gui on a Native Windows Computer. |
| |
| Environment setup |
| ################# |
| |
| .. container:: paragraph |
| |
| create and run docker images about the following tar packages |
| |
| .. container:: listingblock |
| |
| .. container:: content |
| |
| .. code:: |
| :number-lines: |
| |
| docker load-i pdp.tar |
| docker load-i mariadb.tar |
| docker load-i api.tar |
| docker load-i apex.tar |
| docker load-i pap.tar |
| docker load-i xacml.tar |
| |
| .. container:: paragraph |
| |
| download latest source from gerrit and create tar by command |
| |
| .. code:: |
| :number-lines: |
| |
| tar example example.tar |
| |
| .. container:: paragraph |
| |
| download drools-pdp latest source from gerrit |
| |
| .. container:: paragraph |
| |
| prepare eclipse for starting drools-pdp |
| |
| .. container:: paragraph |
| |
| config drools-pdp dependency in eclipse |
| |
| .. container:: ulist |
| |
| - create config folder inside drools-pdp\policy-management, copy feature-lifecycle.properties into this folder |
| |
| .. container:: imageblock |
| |
| .. container:: content |
| |
| |Create the Folder Arc| |
| |
| .. container:: content |
| |
| .. code:: |
| :number-lines: |
| |
| lifecycle.pdp.group=${envd:POLICY_PDP_PAP_GROUP:defaultGroup} |
| |
| dmaap.source.topics=POLICY-PDP-PAP |
| dmaap.sink.topics=POLICY-PDP-PAP |
| |
| dmaap.source.topics.POLICY-PDP-PAP.servers=localhost:3904 |
| dmaap.source.topics.POLICY-PDP-PAP.managed=false |
| |
| dmaap.sink.topics.POLICY-PDP-PAP.servers=localhost:3904 |
| dmaap.sink.topics.POLICY-PDP-PAP.managed=false |
| |
| - update run property "classpath" of "drools.system.Main" in Eclipse |
| |
| .. container:: imageblock |
| |
| .. container:: content |
| |
| |Update run Property| |
| |
| .. container:: imageblock |
| |
| .. container:: content |
| |
| |Lifecycle classpath setting| |
| |
| Prepare Postman for sending REST request to components during demo |
| ################################################################## |
| |
| .. container:: paragraph |
| |
| import "demo.postman_collection.json" into PostMan |
| |
| .. container:: imageblock |
| |
| .. container:: content |
| |
| |Import JSON in PostMan| |
| |
| .. container:: content |
| |
| "demo.postman_collection.json", ":download:`link <demo.postman_collection.json>`" |
| |
| .. container:: paragraph |
| |
| clean docker environment |
| |
| .. code:: |
| :number-lines: |
| |
| # docker rm $(docker ps-aq) |
| |
| Demo steps |
| ########## |
| .. container:: paragraph |
| |
| 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 |
| |
| .. container:: |
| |
| .. container:: content |
| |
| .. code:: |
| :number-lines: |
| |
| # docker-compose up -d mariadb message-router |
| |
| .. container:: paragraph |
| |
| docker compose start other components API, PAP, APEX-PDP, XACML-PDP |
| |
| .. container:: |
| |
| .. container:: content |
| |
| .. code:: |
| :number-lines: |
| |
| # docker-compose up -d pdp xacml pap api |
| |
| .. container:: paragraph |
| |
| start "drools.system.Main" in eclipse |
| |
| .. container:: paragraph |
| |
| verify PDPs are registered into the database |
| |
| .. container:: ulist |
| |
| - get pdp lists in database |
| |
| .. container:: paragraph |
| |
| curl --location --request GET 'http://localhost:7979/policy/pap/v1/pdps' --user 'healthcheck:zb!XztG34' | json_pp |
| |
| - get statistics |
| |
| .. container:: paragraph |
| |
| curl --location --request GET 'http://localhost:7979/policy/pap/v1/pdps/statistics/' --user 'healthcheck:zb!XztG34' | json_pp |
| |
| .. container:: ulist |
| |
| - start PAP statistics monitoring GUI |
| |
| .. container:: paragraph |
| |
| java -jar client/client-monitoring/target/client-monitoring-uber 2.2.0-SNAPSHOT.jar |
| |
| - open monitor in browser |
| |
| .. container:: paragraph |
| |
| curl localhost:18999 |
| |
| .. container:: paragraph |
| |
| set up pap parameter |
| |
| .. container:: imageblock |
| |
| .. container:: content |
| |
| |Pap parameter| |
| |
| .. container:: paragraph |
| |
| input parameters |
| |
| .. container:: imageblock |
| |
| .. container:: content |
| |
| |Set up pap parameter| |
| |
| .. container:: paragraph |
| |
| Fetch PdpLists |
| |
| .. container:: imageblock |
| |
| .. container:: content |
| |
| |Fetch Pdp Lists| |
| |
| .. container:: paragraph |
| |
| no Engine Worker started, we can only see healthcheck result when we click on the instance APEX statistics |
| |
| .. container:: imageblock |
| |
| |No engine worker started| |
| |
| .. container:: paragraph |
| |
| XACML statistics |
| |
| .. container:: imageblock |
| |
| |XACML statistics| |
| |
| .. container:: paragraph |
| |
| use PostMan to send request to API to create policy type/create policy/ deploy policy |
| |
| .. container:: content |
| |
| .. code:: |
| :number-lines: |
| |
| API_Create Policy Type |
| API_Create Policy |
| Simple Deploy Policy |
| |
| .. container:: paragraph |
| |
| now APEX PDP statistics data includes engine worker statistics, and shows the monitoring GUI updating automatically (every 2 minutes) |
| |
| .. container:: imageblock |
| |
| |Engine worker started| |
| |
| .. container:: paragraph |
| |
| use PostMan to send a request to DMAAP, add one xacml-pdp statistics message manually, show that the monitoring GUI updates the PostMan API |
| |
| .. container:: |
| |
| .. container ::content |
| |
| .. code:: |
| :number-lines: |
| Update Xacml Stats |
| |
| .. container:: paragraph |
| |
| xacml-pdp statistics update |
| |
| .. container:: imageblock |
| |
| |Update XACML statistics| |
| |
| |
| |
| |
| .. |Create the Folder Arc| image:: ./images/CreateFolder.png |
| .. |Update run Property| image:: ./images/ClassPathRunProperty.png |
| .. |Lifecycle classpath setting| image:: ./images/ClassPathSetting.png |
| .. |Import JSON in PostMan| image:: ./images/ImportPostmanJson.png |
| .. |Pap parameter| image:: ./images/PapParameter.png |
| .. |Set up pap parameter| image:: ./images/PapInputParameter.png |
| .. |Fetch Pdp Lists| image:: ./images/FetchPdpLists.png |
| .. |No engine worker started| image:: ./images/NoEngineWorker.png |
| .. |XACML statistics| image:: ./images/XACMLstatistics.png |
| .. |Engine worker started| image:: ./images/PDPstatistics.png |
| .. |Update XACML statistics| image:: ./images/UpdateStatistics.png |