aboutsummaryrefslogtreecommitdiffstats
AgeCommit message (Collapse)AuthorFilesLines
2021-07-01Release policy handler 5.1.3HEADmasterJack Lucas1-0/+8
Remove VOLUME definition from PH Dockerfile to prevent startup issues with newer versions of containerd Copy 5.1.3-container.yml to 5.1.3-container.yaml to trigger actual release of file. Issue-ID: DCAEGEN2-2849 Signed-off-by: Jack Lucas <jflos@sonoris.net> Change-Id: I497312e301b860580b41a681a3c3bb20885869db
2021-07-01Release policy-handler 5.1.3Jack Lucas1-0/+8
Remove VOLUME definition from PH Dockerfile to prevent startup issues with newer versions of containerd Issue-ID: DCAEGEN2-2849 Signed-off-by: Jack Lucas <jflos@sonoris.net> Change-Id: Ida3880b5afbacba347f794c93293a230cb5eaba2
2021-07-01Remove VOLUME definition from PH Dockerfile5.1.3Jack Lucas5-8/+11
The DCAE policy handler Dockerfile defined a VOLUME at a relative path "logs". The VOLUME isn't needed and in some deployment environments prevents the policy handler from starting. Removing it. Issue-ID: DCAEGEN2-2849 Signed-off-by: Jack Lucas <jflos@sonoris.net> Change-Id: Ie8a9610880d518bb53c7bd2d414026a7c8af7e77
2021-03-11[DCAE] INFO.yaml updatevv770d1-0/+16
New committer additions (March2021) Change-Id: I425a6eab489acf055e9033b4326103aa9cfcec7c Issue-ID: DCAEGEN2-2657 Issue-ID: DCAEGEN2-2658 Signed-off-by: vv770d <vv770d@att.com>
2021-03-02[DCAE] release policy-handler 5.1.2honoluluvv770d2-1/+14
Requirements updated Change-Id: Ib768a91249a48bc1db7dc2c4e440e59383992cea Signed-off-by: vv770d <vv770d@att.com> Issue-ID: DCAEGEN2-2652 Signed-off-by: vv770d <vv770d@att.com>
2021-03-01Use newer requirements.5.1.2Michal Jagiello2-5/+5
CherryPy had an issue which raises an exception when application starts. That change updates all requirements. Issue-ID: DCAEGEN2-2652 Signed-off-by: Michal Jagiello <michal.jagiello@t-mobile.pl> Change-Id: Ifab5df03792b947f86fba7c6af7f6c76f20d6e84
2021-02-26[DCAE] rls Policy-handler py3 updatesvv770d2-1/+8
Change-Id: I92bb0fcd4b5da1474d1e928110c50c983d0de550 Signed-off-by: vv770d <vv770d@att.com> Issue-ID: DCAEGEN2-2494 Signed-off-by: vv770d <vv770d@att.com>
2021-02-19Merge "Use the latest ONAP Python base image"5.1.1Vijay Venkatesh Kumar5-5/+6
2021-02-18Use the latest ONAP Python base imageMichal Jagiello5-5/+6
Run policy handler using Python 3.9 version Add "py39" env in tox to run tests using Python 3.9 version Issue-ID: DCAEGEN2-2494 Signed-off-by: Michal Jagiello <michal.jagiello@t-mobile.pl> Change-Id: I6ef1316925586eec94c4f301991580cf9334a857 Signed-off-by: vv770d <vv770d@att.com>
2021-02-04Merge "Add initial changelog"Remigiusz Janeczek1-0/+7
2021-02-03Add initial changelogPawel1-0/+7
Issue-ID: DCAEGEN2-2557 Signed-off-by: Pawel <pawel.kasperkiewicz@nokia.com> Change-Id: I7107f2788f7927f80f56027e1598cabf221d3404
2021-01-13dcae INFO.yaml updatevv770d1-10/+6
Committer changes Change-Id: I1a09f01b617cacccc6e77e8e53ba674a434aeb75 Issue-ID: DCAEGEN2-2583 Signed-off-by: vv770d <vv770d@att.com>
2020-09-11dcae INFO.yaml update7.0.0-ONAPguilinvv770d1-11/+25
Project maturity Committer changes Change-Id: I267fae6878b7179dc26a4b9d2dee26e4e6ec7e25 Issue-ID: DCAEGEN2-2425 Signed-off-by: vv770d <vv770d@att.com>
2020-09-08Fix INFO.yaml filesJessica Wagantall1-0/+1
Proper syntax for INFO.yaml requires the first line to be "---" which was previously removed. Re-adding this missing line. Issue-ID: CIMAN-387 Signed-off-by: Jessica Wagantall <jwagantall@linuxfoundation.org> Change-Id: Idc239150fe6417015fc76a89e593367e7175e906
2020-08-26Merge "Run in Python 3.8"Vijay Venkatesh Kumar8-138/+39
2020-08-26Run in Python 3.8Michal Jagiello8-138/+39
Use Docker image prepared by integration team Issue-ID: DCAEGEN2-2292 Signed-off-by: Michal Jagiello <michal.jagiello@t-mobile.pl> Change-Id: Iaed8eda8390287942249857458e756c1dc221f7f
2020-08-21Merge "Revert "Run in Python 3.8""Vijay Venkatesh Kumar5-34/+135
2020-08-21Revert "Run in Python 3.8"Tony Hansen5-34/+135
This reverts commit 49d734038679e128ecd523aea45391327685ce41. Reason for revert: version bump missing Change-Id: Ifc8e76857d52832246d7f414481293d1e17b0c3f Signed-off-by: Tony Hansen <th1395@att.com> Issue-ID: DCAEGEN2-2292
2020-08-21Merge "Run in Python 3.8"Tony Hansen5-135/+34
2020-08-21Run in Python 3.8Michal Jagiello5-135/+34
Use Docker image prepared by integration team Issue-ID: DCAEGEN2-2292 Signed-off-by: Michal Jagiello <michal.jagiello@t-mobile.pl> Change-Id: I6dda392465a20f7199cf3a27a9835c692bf7aaf4
2020-07-23dcae committer updates in INFO.yamlvv770d1-17/+10
Change-Id: Ied61dd16d6a0855007f574d96146080f6cf96420 Issue-ID: DCAEGEN2-2365 Signed-off-by: vv770d <vv770d@att.com>
2020-04-20R7 tag/path updateVijay Venkatesh Kumar1-1/+1
Change-Id: I184267d83edbac71956d14662d09b0980ea076d7 Signed-off-by: Vijay Venkatesh Kumar <vv770d@att.com> Issue-ID: DCAEGEN2-2201
2020-03-07release 5.1.0 PH container6.0.0-ONAPfrankfurtVijay Venkatesh Kumar1-0/+8
policy update notification flow support security updates (optmized pwd sourcing) Change-Id: Ia402cf11cd619b239dd8dbdab982f858f299cc44 Signed-off-by: Vijay Venkatesh Kumar <vv770d@att.com> Issue-ID: DCAEGEN2-1891
2020-02-275.1.0 policy-handler - policy-updates from new PDP5.1.0Alex Shatov48-1338/+4910
DCAEGEN2-1851: - policy-handler now supports the policy-update notification from the new policy-engine thru DMaaP MR = no policy-filters - only policy-id values - see README for discoverable config settings of dmaap_mr client = DMaaP MR client has the same flexibility as policy_engine = set the query.timeout to high value like 15000 (default) - requests to DMaaP MR go through a single blocking connection - first catch-up only after draining the policy-updates from DMaaP MR on the first loop - safe parsing of messages from DMaaP MR - policy-engine changed the data type for policy-version field from int to string that is expected to have the semver value - related change to deployment-handler (DCAEGEN2-2085) has to be deployed to handle the non-numeric policyVersion - on new PDP API: http /policy_latest and policy-updates return the new data from the new PDP API with the following fields added/renamed by the policy-handler to keep other policy related parts intact in R4-R6 (see pdp_api/policy_utils.py) * policyName = policy_id + "." + policyVersion.replace(".","-") + ".xml" * policyVersion = str(metadata["policy-version"]) * "config" - is the renamed "properties" from the new PDP API response - enabled the /catch_up and the periodic auto-catch-up for the new PDP API - enabled GET /policies_latest - returns the latest policies for the deployed components - POST /policies_latest - still disabled since no support for the policy-filters is provided for the new PDP API - fixed hiding the Authorization value on comparing the configs - logging of secrets is now sha256 to see whether they changed - added X-ONAP-RequestID to headers the same way as X-ECOMP-RequestID - on policy-update process the removal first, then addition - changed the pool_connections=1 (number of pools) on PDP and DH sides == only a single destination is expected for each - log the exception as fatal into error.log - other minor fixes and refactoring - unit-test coverage 74% - integration testing is requested DCAEGEN2-1976: - policy-handler is enhanced to get user/password from env vars for PDP and DMaaP MR clients and overwriting the Authorization field in https headers received from the discoverable config = to override the Authorization value on policy_engine, set the environment vars $PDP_USER and $PDP_PWD in policy-handler container = to override the Authorization value on dmaap_mr, if using https and user-password authentication, set the environment vars $DMAAP_MR_USER and $DMAAP_MR_PWD in policy-handler container Change-Id: Iad8eab9e20e615a0e0d2822f4735dc64c50aa55c Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-1851 Issue-ID: DCAEGEN2-1976
2020-01-24Fix committer IDJack Lucas1-1/+1
Issue-ID: DCAEGEN2-2012 Signed-off-by: Jack Lucas <jflucas@research.att.com> Change-Id: Ie93e9704f70a1bb69fb2ee041d0ffebc8c8456fb
2019-12-03Update DCAE Committer in INFO.yamlJoeOLeary1-26/+10
Issue-ID: DCAEGEN2-1891 Signed-off-by: JoeOLeary <joseph.o.leary@est.tech> Change-Id: I03f82ecc8baeab3541fb3bd9a5e2eb02a22c139c
2019-11-25Fix some logging handler's containing moduleMiroslav Los1-3/+4
Signed-off-by: Miroslav Los <miroslav.los@pantheon.tech> Issue-ID: DCAEGEN2-1936 Change-Id: I4169e8bf2f6562358306389f28e33be3e6c8ce29
2019-11-14DCAEGEN2-1919 add HTTPS and change log rotationSchmalzried, Terry (ts862m)8-22/+43
Change-Id: I7859dde9460620e18edca887f5dfc611639b268c Issue-ID: DCAEGEN2-1919 Signed-off-by: Schmalzried, Terry (ts862m) <ts862m@att.com>
2019-09-30R6 tag updateVijay Venkatesh Kumar1-1/+1
Change-Id: I79c2317cb00398ebe5d66df0c0e55dbcecc8db70 Signed-off-by: Vijay Venkatesh Kumar <vv770d@att.com> Issue-ID: DCAEGEN2-1785 Signed-off-by: Vijay Venkatesh Kumar <vv770d@att.com>
2019-05-06R5 tag update5.0.2-ONAP5.0.1-ONAPelaltoVijay Venkatesh Kumar1-1/+1
Change-Id: Iab0afc328e778c622f5e807cdefefc5520def51e Signed-off-by: Vijay Venkatesh Kumar <vv770d@att.com> Issue-ID: DCAEGEN2-1481
2019-04-015.0.0 policy-handler - new PDP API or old PDP API4.0.0-ONAPdublinAlex Shatov62-1262/+3701
- in R4 Dublin the policy-engine introduced a totally new API - policy-handler now has a startup option to either use the new PDP API or the old PDP API that was created-updated before the end of 2018 - see README.md and README_pdp_api_v0.md for instructions on how to setup the policy-handler running either with the new PDP API or the old (pdp_api_v0) PDP API - this is a massive refactoring that changed almost all the source files, but kept the old logic when using the old (pdp_api_v0) PDP API - all the code related to PDP API version is split into two subfolders = pdp_api/ contains the new PDP API source code = pdp_api_v0/ contains the old (2018) PDP API source code = pdp_client.py imports from either pdp_api or pdp_api_v0 = the rest of the code is only affected when it needs to branch the logic - logging to policy_handler.log now shows the path of the source file to allow tracing which PDP API is actually used - when the new PDP API is used, the policy-update flow is disabled = passive mode of operation = no web-socket = no periodic catch_up = no policy-filters = reduced web-API - only a single /policy_latest endpoint is available /policies_latest returns 404 /catch_up request is accepted, but ignored - on new PDP API: http /policy_latest returns the new data from the new PDP API with the following fields added by the policy-handler to keep other policy related parts intact in R4 (see pdp_api/policy_utils.py) = "policyName" = policy_id + "." + "policyVersion" + ".xml" = "policyVersion" = str("metadata"."policy-version") = "config" - is the renamed "properties" from the new PDP API response - unit tests are split into two subfolders as well = main/ for the new PDP API testing = pdp_api_v0/ for the old (2018) PDP API - removed the following line from the license text of changed files ECOMP is a trademark and service mark of AT&T Intellectual Property. - the new PDP API is expected to be extended and redesigned in R5 El Alto - on retiring the old PDP API - the intention is to be able to remove the pdp_api_v0/ subfolder and minimal related cleanup of the code that imports that as well as the cleanup of the config.py, etc. Change-Id: Ief9a2ae4541300308caaf97377f4ed051535dbe4 Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-1128
2019-01-314.6.0 policy-handler - active-passiveAlex Shatov13-63/+383
DCAEGEN2-931: - exposed POST /reconfigure endpoint on the web-server that initiates the reconfigure process right away DCAEGEN2-932: - mode_of_operation: active or passive = active is as before this change = in passive mode the policy-handler * closes the web-socket to PDP * skips the periodic catch_ups * still periodically checks for reconfigure * still allows usig the web-server to retrieve policies from PDP - default is active - when mode_of_operation changes from passive to active, the policy-handler invokes the catch_up right away - config-kv contains the optional override field mode_of_operation = changing the mode_of_operation in config-kv and invoking POST /reconfigure will bring the new value and change the mode of operation of the policy-handler if no service_activator section is provided in consul-kv record - if config-kv contains the service_activator section, = the policy-handler registers with service_activator - untested = and receives the mode_of_operation - untested = service_activator can POST-notify the policy-handler to initiate the /reconfigure - reduced the default web-socket ping interval from 180 to 30 seconds because PDP changed its default timeout on the web-socket from 400 seconds to 50 seconds Change-Id: If7dd21c008d9906aca97939be65dfa9c2f007535 Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-931 Issue-ID: DCAEGEN2-932
2018-12-054.5.0 policy-handler - multi changeAlex Shatov29-1004/+4831
DCAEGEN2-853: - stop reporting the absence of policies or updates as error - this is an expected result == INFO or WARNING DCAEGEN2-903: preparation for TLS on the web-server of policy-handler DCAEGEN2-930: - configurable timeouts for http requests from policy-handler - added configurable pinging on the web-socket to PDP - added healthcheck info on the web-socket - upgraded websocket-client lib to 0.53.0 DCAEGEN2-1017: fixed a bug on policy-filter matching by filter_config_name - refactored and enhanced the unit-tests Change-Id: I111ddc57bb978554ef376cbf916965b6667dad9b Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-853 Issue-ID: DCAEGEN2-903 Issue-ID: DCAEGEN2-930 Issue-ID: DCAEGEN2-1017
2018-11-09R4 tag updateVijay Venkatesh Kumar1-1/+1
Change-Id: I6026a4b58e325e19837bc2177ca1cb32c6c921d5 Signed-off-by: Vijay Venkatesh Kumar <vv770d@att.com> Issue-ID: DCAEGEN2-937
2018-09-204.4.0 policy-handler - configurable consul-url4.4.03.0.1-ONAP3.0.0-ONAPcasablancaAlex Shatov7-14/+26
- made consul-url configurable thru env var or local config consul url is taken from env var $CONSUL_URL if not provided, then from consul_url in etc/config.json if not provided, then from hardcoded value of http://consul:8500 - per request from convergence team - needed to avoid the collision between two consuls provided by ONAP/OOM/DCAE and cloudify ver >= 4.x Change-Id: Ic702c872bda3d851842ec41085480a9df200cbde Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-822
2018-09-184.3.1 policy-handler - tls on web-socketAlex Shatov4-5/+14
- if tls on web-socket to policy-engine fails, retry connecting after a prolonged delay (60secs) under expectation that the config might change in consul-kv for the policy-handler that will fix the tls problem - relying on the periodic reconfigure feature of the policy-handler Change-Id: Id89f5346a99d572bace551e20a583f4c08374fc4 Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-611
2018-09-144.3.0 policy-handler - tls to policy-engineAlex Shatov14-115/+252
- tls to policy-engine - tls on web-socket to policy-engine - tls to deployment-handler - no tls on the web-server side = that is internal API = will add TLS in R4 - policy-handler expecting the deployment process to mount certs at /opt/app/policy_handler/etc/tls/certs/ - blueprint for policy-handler will be updated to contain cert_directory : /opt/app/policy_handler/etc/tls/certs/ - the matching local etc/config.json has new part tls with: = cert_directory : etc/tls/certs/ = cacert : cacert.pem - new optional fields tls_ca_mode in config on consul that specify where to find the cacert.pem for tls per each https/web-socket values are: "cert_directory" - use the cacert.pem stored locally in cert_directory this is the default if cacert.pem file is found "os_ca_bundle" - use the public ca_bundle provided by linux system. this is the default if cacert.pem file not found "do_not_verify" - special hack to turn off the verification by cacert and hostname - config on consul now has 2 new fields for policy_engine = "tls_ca_mode" : "cert_directory" = "tls_wss_ca_mode" : "cert_directory" - config on consul now has 1 new field for deploy_handler = "tls_ca_mode" : "cert_directory" - removed customization for verify -- it is now a built-in feature Change-Id: Ibe9120504ed6036d1ed4c84ff4cd8ad1d9e80f17 Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-611
2018-08-244.2.0 policy-handler - periodic reconfigureAlex Shatov21-280/+682
- reconfigure == periodically retrieve the policy-handler config from consul-kv and compare to previous config and subconfigs. If changed, reconfigure the subunits - selectively change one or any settings for the following = catch_up timer interval = reconfigure timer interval = deployment-handler url and params (thread-safe) = policy-engine url and params (thread-safe) = web-socket url to policy-engine (through a callback) - each subunit has its own Settings that keep track of changes - try-catch and metrics around discovery - consul API - hidden the secrets from logs - froze the web-socket version to 0.49.0 because 0.50.0 and 0.51.0 are broken - looking around for stable alternatives - fixed-adapted the callbacks passed to the web-socket lib that changed its API in 0.49.0 and later - log the stack on the exception occurring in the web-socket lib - unit test refactoring Change-Id: Id53bad59660a197f59d9aeb7c05ab761d1060cd0 Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-470
2018-08-144.1.0 pass cfy_tenant_name to deployment-handlerAlex Shatov6-15/+25
- pass cfy_tenant_name in query from policy-handler to deployment-handler - new config "query":{"cfy_tenant_name": "default_tenant"} - limits the single policy-handler to a single cfy_tenant_name in cloudify under the deployment-handler Change-Id: I257a9b74be6ddcde77a2b4fceabd4aa628890466 Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-704
2018-08-104.0.1 fix for removing the non-matching policyAlex Shatov9-51/+51
- fixed removing the policy that no longer match the filter = sending an empty policy_filter_matches for the policy_id - cleaner workaround on getting the updated policy when policy-engine sent policy-update notification before finishing the update on there side = using the collection of expected_versions instead of min_version_expected - some minor refactoring on policy_matcher and audit Change-Id: Ica3cb810378e61d6991c616f88265ff170d32a64 Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-492
2018-08-074.0.0 new dataflow on policy-update and catchupAlex Shatov20-1364/+2260
- changed API and functionality - new dataflow - new dataflow between policy-handler and deployment-handler on policy-update and catchup = GETting policy_ids+versions and policy-filters from deployment-handler = PUTting policy-update and catchup in the new message format = data segmenting the policy-update/catchup messages to deployment-handler to avoid 413 on deployment-handler side = matching policies from policy-engine to policies and policy-filters from deployment-handler = coarsening the policyName filter received from deployment-handler to reduce the number messages passed to policy-engine on catchup = consolidating sequential policy-updates into a single request when the policy-update is busy - removed policy scope-prefixes from config and logic - it is not needed anymore because = the policy matching happens directly to policies and policy-filters received from deployment-handler = on catchup - the policy scope-prefix equivalents are calculated based on the data received from deployment-handler - API - GET /policies_latest now returns the info on deployed policy_ids+versions and policy-filters, rather than policies of the scope-prefixes previously found in config (obsolete) - not sending an empty catch_up message to deployment-handler when nothing changed - send policy-removed to deployment-handler when getting 404-not found from PDP on removal of policy - config change: removed catch_up.max_skips - obsolete - brought the latest CommonLogger.py - minor refactoring - improved naming of variables Change-Id: I36b3412eefd439088cb693703a6e5f18f4238b00 Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-492
2018-07-27Merge "Add INFO.yaml file"Vijay Venkatesh Kumar1-0/+90
2018-07-26Add INFO.yaml fileJessica Wagantall1-0/+90
Add INFO.yaml to list: - Project description - Properties - PTL information - Meeting information - Committer information Change-Id: If536dd10d8bbc3d3881b01f8d2dce70685619fc1 Issue-ID: CIMAN-134 Signed-off-by: Jessica Wagantall <jwagantall@linuxfoundation.org>
2018-07-16Update release tagLusheng Ji1-1/+1
Issue-ID: DCAEGEN2-499 Change-Id: Id7fc337a8c5b897cb26af1d10ed47d5718f48694 Signed-off-by: Lusheng Ji <lji@research.att.com>
2018-06-213.0.1 policy-handler - cleaning sonar smellsAlex Shatov16-260/+297
- no change of functionality or API - removed the unused enum34>=1.1.6 from requirements.txt and setup.py - refactored run_policy.sh to redirect the stdout+stderr only once - refactoring to remove smells+vulnerability reported by sonar -- renamed Config.config to Config.settings -- removed the commented out code in customizer.py -- renamed StepTimer.NEXT to StepTimer.STATE_NEXT to avoid the naming confusion with the method StepTimer.next. Also renamed the related StepTimer.STATE_* constants -- refactored several functions by extracting methods to eliminate 4 out of 5 "brain-overload" smells reported by sonar -- moved the literal string for the socket_host "0.0.0.0" to a constant on the web-server to avoid the reported vulnerability Change-Id: I4c7d47d41c6ecd7cb28f6704f5dad2053c1ca7d6 Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-515
2018-06-143.0.0 policy-handler - migrated to python 3.6Alex Shatov23-95/+106
- migrated from python 2.7 to 3.6 - brought up the latest versions of dependencies -- Cherrypy 15.0.0, requests 2.18.4, websocket-client 0.48.0 - fixed migration errors -- renamed the standard package Queue to queue -- dict.items() instead of dict.iteritems() -- dict.keys() instead of dict.viewkeys() -- range() instead of xrange() -- subprocess.check_output(..., universal_newlines=True) to get str instead of byte-stream from stdout - cleaned up migration warnings -- super() instead of super(A, self) -- logger.warning() instead of .warn() - moved main() from policy_handler.py to __main__.py - getting the policy_handler version directly from setup.py instead of the env var on init of the audit Change-Id: I0fc4ddc51c08a64f3cfdc5d2f010b1c6a1ae92f0 Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-515
2018-05-242.4.5 policy-handler - fix of unit tests2.0.0-ONAPbeijing2.0.0-ONAPAlex Shatov5-5/+8
- turned off test_gc unit-test on policy-handler to avoid get /gc/stats after shutdown of the web-server - made rougher comparison between execution time and timer interval Change-Id: Idcf6caae6f2a934dc2dc2d5a0fddd06543abd48a Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-532
2018-05-182.4.4 policy-handler - log process memoryAlex Shatov14-205/+421
- in search of the memory leak that is falsely reported by docker stats, the following runtime logging was added = process_memory - rss and other memory of the current process = virtual_memory - the memory info of the whole system = thread_stacks - the active threads with the full stack on each Change-Id: I5f5ab3a477bfba3aecc5963547aa82da6269670b Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-514
2018-05-102.4.3 policy-handler - try-catch top ExceptionsAlex Shatov16-601/+1358
- added try-except for top level Exception into all threads of policy-handler to avoid losing the thread and tracking the unexpected crashes - rediscover the deployment-handler if not found before and after each catchup - refactored audit - separated metrics from audit - added more stats and runtime info to healthcheck = gc counts and garbage info if any detected = memory usage - to detect the potential memory leaks = request_id to all stats = stats of active requests - avoid reallocating the whole Queue of policy-updates after catchup = clear of the internal queue under proper lock Change-Id: I3fabcaac70419a68bd070ff7d591a75942f37663 Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-483
2018-04-272.4.2 policy-handler - fixed race on step-timerAlex Shatov12-94/+162
- fixed the bug of unpredictably stopping of the periodic catch-up step-timer due to thread race condition in policy-handler = added critical sections under the reentrant lock on every group of local var change in step-timer - added more stats for healthcheck to track each type of job-operation separately = that helps narrowing down identifying the potential problems - unit test coverage 76% Change-Id: I92ddf6c92a3d225d9b87427e3edfb7f80669501a Signed-off-by: Alex Shatov <alexs@att.com> Issue-ID: DCAEGEN2-472