)]}'
{"/PATCHSET_LEVEL":[{"author":{"_account_id":9976,"name":"Ronelle Landy","email":"rlandy@redhat.com","username":"rlandy"},"change_message_id":"1cf5db45706d9b22ffd63a44672ac091eea7c647","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"22df93b1_9278bf32","updated":"2025-08-12 21:35:30.000000000","message":"Chandan,thank you for adding this comprehensive doc.\nComments in line.","commit_id":"171b18f61dcb890baa1598eea635a7449221e282"},{"author":{"_account_id":9976,"name":"Ronelle Landy","email":"rlandy@redhat.com","username":"rlandy"},"change_message_id":"bf06f5a563504031ecbbd384dcd0dd3aa357f89f","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"d121b93b_022d1b0b","updated":"2025-08-12 21:36:20.000000000","message":"Generally looks good - points in line comments","commit_id":"171b18f61dcb890baa1598eea635a7449221e282"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"57d1b5e02e2f181a5ebbb7fd2d71452d3073031b","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":5,"id":"971116f1_a58835fe","updated":"2025-08-12 12:33:03.000000000","message":"Here is the generated docs: https://228afdcec6f8350b7ece-f8f2325f9cdf23e3484fa164239be565.ssl.cf5.rackcdn.com/openstack/3e426daefb104845949864b018656a77/docs/user/continuous_audit_dummy_strategy.html","commit_id":"171b18f61dcb890baa1598eea635a7449221e282"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":7,"id":"9f26a375_6c0ca8e0","updated":"2025-08-13 08:04:28.000000000","message":"Thanks for documenting this, it\u0027s really a very comprehensive guide to continuous audits. As a general rule, I\u0027d remove mentioning dummy strategy from the title and main sections. It may be good to mention that dummy strategy is a only-testing strategy to learn and test, but actually the goal of the doc is to explain continuous audits more that dummy strategy and we should be explicit that what is mentioned in the doc is valid for any strategy and audit.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"88bfab0a_438ddbc0","updated":"2025-08-14 07:42:15.000000000","message":"Thank you @amoralej@redhat.com for the extensive review. I have addressed all the changes.","commit_id":"24f4b6338f0045ef49821071cda743a52c759c61"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"370b50be6a07d780178c8c486378d9f5fee016b7","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":9,"id":"c69ba188_fb5a12da","updated":"2025-08-18 15:50:55.000000000","message":"thanks for creating this doc Chandan! it looks great!","commit_id":"24f4b6338f0045ef49821071cda743a52c759c61"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"49930c1dd9269313a0256d4652f51e5da8d98600","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"7b17b219_ce74a6bd","updated":"2025-09-23 12:09:01.000000000","message":"I have some small nits that I think that we can fix/discuss about that, what do you guys think?","commit_id":"abdbbb8ec1e5de2d2715df71aa8ed05465cdb42d"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"61315747641087f224347b0e474905ab39715d8d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":10,"id":"61c342b6_f4a33733","updated":"2025-09-22 12:57:27.000000000","message":"upgrading my vote","commit_id":"abdbbb8ec1e5de2d2715df71aa8ed05465cdb42d"},{"author":{"_account_id":34452,"name":"Joan Gilabert","display_name":"jgilaber","email":"jgilaber@redhat.com","username":"jgilaber"},"change_message_id":"b175acfa9934486632d851e9e39785f307c2e44d","unresolved":false,"context_lines":[],"source_content_type":"","patch_set":12,"id":"4d16b8bf_ac3a22d1","updated":"2025-09-26 08:03:38.000000000","message":"looks good, thanks Chandan!","commit_id":"3c8bc6be6236335d6558bd6576f3f72351f224f1"}],"doc/source/user/continuous_audit_dummy_strategy.rst":[{"author":{"_account_id":9976,"name":"Ronelle Landy","email":"rlandy@redhat.com","username":"rlandy"},"change_message_id":"1cf5db45706d9b22ffd63a44672ac091eea7c647","unresolved":true,"context_lines":[{"line_number":15,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":16,"context_line":"Continuous Audit using Dummy Strategy"},{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Continuous audits allow Watcher to continuously monitor and optimize your"},{"line_number":20,"context_line":"OpenStack infrastructure based on predefined schedules or intervals. This guide"},{"line_number":21,"context_line":"demonstrates how to set up and use continuous audits with the dummy strategy,"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1522a494_27fd50bd","line":18,"updated":"2025-08-12 21:35:30.000000000","message":"Maybe Roger can confirm the capitalization convention.\niiuc, Capital except prepositions?\nSo in this case Using","commit_id":"171b18f61dcb890baa1598eea635a7449221e282"},{"author":{"_account_id":9976,"name":"Ronelle Landy","email":"rlandy@redhat.com","username":"rlandy"},"change_message_id":"1cf5db45706d9b22ffd63a44672ac091eea7c647","unresolved":true,"context_lines":[{"line_number":107,"context_line":""},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"Step 1: Create a Continuous Audit"},{"line_number":110,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":111,"context_line":""},{"line_number":112,"context_line":"Create a continuous audit that will run at regular intervals. You can specify"},{"line_number":113,"context_line":"the interval in seconds or use cron-like expressions."}],"source_content_type":"text/x-rst","patch_set":5,"id":"793e9d65_6241ce9c","line":110,"updated":"2025-08-12 21:35:30.000000000","message":"There are no other steps.\nWe can just remove the \"Step 1:\" text","commit_id":"171b18f61dcb890baa1598eea635a7449221e282"},{"author":{"_account_id":9976,"name":"Ronelle Landy","email":"rlandy@redhat.com","username":"rlandy"},"change_message_id":"1cf5db45706d9b22ffd63a44672ac091eea7c647","unresolved":true,"context_lines":[{"line_number":188,"context_line":"  +---------------+--------------------------------------+"},{"line_number":189,"context_line":""},{"line_number":190,"context_line":"Time Constraints in interval"},{"line_number":191,"context_line":"-----------------------------"},{"line_number":192,"context_line":""},{"line_number":193,"context_line":"You can limit when the continuous audit runs by setting start and end times."},{"line_number":194,"context_line":"Below example creates a continuous audit that runs from 12:00 to 13:00 with 5 minute interval."}],"source_content_type":"text/x-rst","patch_set":5,"id":"be1395bb_db4047bd","line":191,"updated":"2025-08-12 21:35:30.000000000","message":"Interval","commit_id":"171b18f61dcb890baa1598eea635a7449221e282"},{"author":{"_account_id":9976,"name":"Ronelle Landy","email":"rlandy@redhat.com","username":"rlandy"},"change_message_id":"1cf5db45706d9b22ffd63a44672ac091eea7c647","unresolved":true,"context_lines":[{"line_number":191,"context_line":"-----------------------------"},{"line_number":192,"context_line":""},{"line_number":193,"context_line":"You can limit when the continuous audit runs by setting start and end times."},{"line_number":194,"context_line":"Below example creates a continuous audit that runs from 12:00 to 13:00 with 5 minute interval."},{"line_number":195,"context_line":""},{"line_number":196,"context_line":".. code-block:: bash"},{"line_number":197,"context_line":""}],"source_content_type":"text/x-rst","patch_set":5,"id":"000a0c7b_a807feae","line":194,"updated":"2025-08-12 21:35:30.000000000","message":"The example below","commit_id":"171b18f61dcb890baa1598eea635a7449221e282"},{"author":{"_account_id":9976,"name":"Ronelle Landy","email":"rlandy@redhat.com","username":"rlandy"},"change_message_id":"1cf5db45706d9b22ffd63a44672ac091eea7c647","unresolved":true,"context_lines":[{"line_number":227,"context_line":"  +---------------+--------------------------------------+"},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"Time Constraints in interval"},{"line_number":230,"context_line":"-----------------------------"},{"line_number":231,"context_line":""},{"line_number":232,"context_line":"You can limit when the continuous audit runs by setting start and end times."},{"line_number":233,"context_line":"Below example creates a continuous audit that runs from 12:00 to 13:00 with"}],"source_content_type":"text/x-rst","patch_set":5,"id":"88e0bbd5_8c90a45a","line":230,"updated":"2025-08-12 21:35:30.000000000","message":"in Interval with Cron\n(otherwise it looks like a repeated section)","commit_id":"171b18f61dcb890baa1598eea635a7449221e282"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":true,"context_lines":[{"line_number":227,"context_line":"  +---------------+--------------------------------------+"},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"Time Constraints in interval"},{"line_number":230,"context_line":"-----------------------------"},{"line_number":231,"context_line":""},{"line_number":232,"context_line":"You can limit when the continuous audit runs by setting start and end times."},{"line_number":233,"context_line":"Below example creates a continuous audit that runs from 12:00 to 13:00 with"}],"source_content_type":"text/x-rst","patch_set":5,"id":"e575cf89_de7826df","line":230,"in_reply_to":"2e214376_f51fdc80","updated":"2025-08-14 07:42:15.000000000","message":"removed","commit_id":"171b18f61dcb890baa1598eea635a7449221e282"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":227,"context_line":"  +---------------+--------------------------------------+"},{"line_number":228,"context_line":""},{"line_number":229,"context_line":"Time Constraints in interval"},{"line_number":230,"context_line":"-----------------------------"},{"line_number":231,"context_line":""},{"line_number":232,"context_line":"You can limit when the continuous audit runs by setting start and end times."},{"line_number":233,"context_line":"Below example creates a continuous audit that runs from 12:00 to 13:00 with"}],"source_content_type":"text/x-rst","patch_set":5,"id":"2e214376_f51fdc80","line":230,"in_reply_to":"88e0bbd5_8c90a45a","updated":"2025-08-13 08:04:28.000000000","message":"Actually, i think we only need one section to explain constraints with start_time and end_time. I\u0027d say we don\u0027t need to be so specific to distinguish how to use it with interval or cron (it\u0027s exactly the same).","commit_id":"171b18f61dcb890baa1598eea635a7449221e282"},{"author":{"_account_id":9976,"name":"Ronelle Landy","email":"rlandy@redhat.com","username":"rlandy"},"change_message_id":"1cf5db45706d9b22ffd63a44672ac091eea7c647","unresolved":true,"context_lines":[{"line_number":230,"context_line":"-----------------------------"},{"line_number":231,"context_line":""},{"line_number":232,"context_line":"You can limit when the continuous audit runs by setting start and end times."},{"line_number":233,"context_line":"Below example creates a continuous audit that runs from 12:00 to 13:00 with"},{"line_number":234,"context_line":"5 minute interval in cron expression."},{"line_number":235,"context_line":""},{"line_number":236,"context_line":".. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":5,"id":"1d5df032_0e264251","line":233,"updated":"2025-08-12 21:35:30.000000000","message":"The example below","commit_id":"171b18f61dcb890baa1598eea635a7449221e282"},{"author":{"_account_id":9976,"name":"Ronelle Landy","email":"rlandy@redhat.com","username":"rlandy"},"change_message_id":"1cf5db45706d9b22ffd63a44672ac091eea7c647","unresolved":true,"context_lines":[{"line_number":351,"context_line":"  | b301dd17-a139-4a45-ade2-b2c2ddf006ef | 7d1f1961-41a6-47ae-a94a-cf5e43174fbd | CANCELLED   | 2025-08-12T09:29:38+00:00 |                 |"},{"line_number":352,"context_line":"  | 22a5bc60-adef-447a-aa27-731b4f5f7ee3 | 7d1f1961-41a6-47ae-a94a-cf5e43174fbd | RECOMMENDED | None                      |                 |"},{"line_number":353,"context_line":"  +--------------------------------------+--------------------------------------+-------------+---------------------------+-----------------+"},{"line_number":354,"context_line":""},{"line_number":355,"context_line":".. note::"},{"line_number":356,"context_line":""},{"line_number":357,"context_line":"   In continuous audits, when a new action plan is generated, previous"}],"source_content_type":"text/x-rst","patch_set":5,"id":"a2e3b5d0_4e53c267","line":354,"updated":"2025-08-12 21:35:30.000000000","message":"Can limit the length so it does not overrun but only showing some columns","commit_id":"171b18f61dcb890baa1598eea635a7449221e282"},{"author":{"_account_id":9976,"name":"Ronelle Landy","email":"rlandy@redhat.com","username":"rlandy"},"change_message_id":"1cf5db45706d9b22ffd63a44672ac091eea7c647","unresolved":true,"context_lines":[{"line_number":358,"context_line":"   RECOMMENDED action plans are automatically set to CANCELLED state to"},{"line_number":359,"context_line":"   avoid conflicts."},{"line_number":360,"context_line":""},{"line_number":361,"context_line":"Further we can view the action plan details and run specific actions,"},{"line_number":362,"context_line":""},{"line_number":363,"context_line":"Manage Continuous Audits"},{"line_number":364,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":5,"id":"8246af5f_1b00042c","line":361,"updated":"2025-08-12 21:35:30.000000000","message":": or. ? ... not sure where the comma goes from here","commit_id":"171b18f61dcb890baa1598eea635a7449221e282"},{"author":{"_account_id":9976,"name":"Ronelle Landy","email":"rlandy@redhat.com","username":"rlandy"},"change_message_id":"1cf5db45706d9b22ffd63a44672ac091eea7c647","unresolved":true,"context_lines":[{"line_number":425,"context_line":"- ``\"*/15 * * * *\"``: Every 15 minutes"},{"line_number":426,"context_line":"- ``\"0 9-17 * * 1-5\"``: Every hour during business hours (9 AM - 5 PM, Mon-Fri)"},{"line_number":427,"context_line":"- ``\"30 2 * * *\"``: Daily at 2:30 AM"},{"line_number":428,"context_line":""},{"line_number":429,"context_line":""},{"line_number":430,"context_line":"Decision Engine Configuration"},{"line_number":431,"context_line":"-----------------------------"}],"source_content_type":"text/x-rst","patch_set":5,"id":"b5aac319_25018189","line":428,"updated":"2025-08-12 21:35:30.000000000","message":"The above rendered in one line not in bullet points - which is what I think is intended","commit_id":"171b18f61dcb890baa1598eea635a7449221e282"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":13,"context_line":""},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":16,"context_line":"Continuous Audit Using Dummy Strategy"},{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Continuous audits allow Watcher to continuously monitor and optimize your"}],"source_content_type":"text/x-rst","patch_set":7,"id":"867793dd_120ca0bc","line":16,"range":{"start_line":16,"start_character":0,"end_line":16,"end_character":2},"updated":"2025-08-13 08:04:28.000000000","message":"I think this document is applicable to continuous audits for any strategy and goal, I would not emphasize the dummy strategy, so I\u0027d make this document title simply \"Using Continuous Audits\" or something like that.\n\nActually, given that the dummy strategy is an testing-only one, I\u0027d use a different one for the document, although you correctly explain what is dummy strategy below.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":false,"context_lines":[{"line_number":13,"context_line":""},{"line_number":14,"context_line":""},{"line_number":15,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":16,"context_line":"Continuous Audit Using Dummy Strategy"},{"line_number":17,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":18,"context_line":""},{"line_number":19,"context_line":"Continuous audits allow Watcher to continuously monitor and optimize your"}],"source_content_type":"text/x-rst","patch_set":7,"id":"c0b73d7c_98a87c0c","line":16,"range":{"start_line":16,"start_character":0,"end_line":16,"end_character":2},"in_reply_to":"867793dd_120ca0bc","updated":"2025-08-14 07:42:15.000000000","message":"Done","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":21,"context_line":"demonstrates how to set up and use continuous audits with the dummy strategy,"},{"line_number":22,"context_line":"which is useful for testing, development, and understanding the continuous"},{"line_number":23,"context_line":"audit workflow."},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"Overview"},{"line_number":26,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"be7b173d_e95e0bdb","line":24,"updated":"2025-08-13 08:04:28.000000000","message":"In case you keep dummy strategy for documentation I would add a sentence to say that what is found in this doc is valid for any other combination of goal/strategy.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":false,"context_lines":[{"line_number":21,"context_line":"demonstrates how to set up and use continuous audits with the dummy strategy,"},{"line_number":22,"context_line":"which is useful for testing, development, and understanding the continuous"},{"line_number":23,"context_line":"audit workflow."},{"line_number":24,"context_line":""},{"line_number":25,"context_line":"Overview"},{"line_number":26,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":27,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"52fc7d2d_4abf4e79","line":24,"in_reply_to":"be7b173d_e95e0bdb","updated":"2025-08-14 07:42:15.000000000","message":"Done","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"1. Watcher services are running and configured properly"},{"line_number":48,"context_line":"2. You have administrator access to OpenStack"},{"line_number":49,"context_line":"3. The watcher-decision-engine service is configured with continuous audit"},{"line_number":50,"context_line":"   support"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"You can verify the services are running:"}],"source_content_type":"text/x-rst","patch_set":7,"id":"75ccc09b_5f2e0e71","line":49,"range":{"start_line":49,"start_character":0,"end_line":49,"end_character":2},"updated":"2025-08-13 08:04:28.000000000","message":"Is there any way to run watcher-decision-engine without continuous audit support?","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":true,"context_lines":[{"line_number":46,"context_line":""},{"line_number":47,"context_line":"1. Watcher services are running and configured properly"},{"line_number":48,"context_line":"2. You have administrator access to OpenStack"},{"line_number":49,"context_line":"3. The watcher-decision-engine service is configured with continuous audit"},{"line_number":50,"context_line":"   support"},{"line_number":51,"context_line":""},{"line_number":52,"context_line":"You can verify the services are running:"}],"source_content_type":"text/x-rst","patch_set":7,"id":"29c87136_379728ae","line":49,"range":{"start_line":49,"start_character":0,"end_line":49,"end_character":2},"in_reply_to":"75ccc09b_5f2e0e71","updated":"2025-08-14 07:42:15.000000000","message":"dropped this line and with out it will not run.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":65,"context_line":"Continuous Audit State Machine"},{"line_number":66,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"Below are the states of a continuous audit:"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"States:"},{"line_number":71,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"1da0c7f2_1d9f76e8","line":68,"range":{"start_line":68,"start_character":0,"end_line":68,"end_character":2},"updated":"2025-08-13 08:04:28.000000000","message":"To avoid duplication of doc, I\u0027d simply refer to https://fc5ca9633b3c0d83c768-809a325e715a1b55cc6fc6186431d7df.ssl.cf5.rackcdn.com/openstack/47907445bd014dfeab5f7cdb09addba4/docs/architecture.html#audit-state-machine","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":false,"context_lines":[{"line_number":65,"context_line":"Continuous Audit State Machine"},{"line_number":66,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":67,"context_line":""},{"line_number":68,"context_line":"Below are the states of a continuous audit:"},{"line_number":69,"context_line":""},{"line_number":70,"context_line":"States:"},{"line_number":71,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"30ac1c2f_962a389b","line":68,"range":{"start_line":68,"start_character":0,"end_line":68,"end_character":2},"in_reply_to":"1da0c7f2_1d9f76e8","updated":"2025-08-14 07:42:15.000000000","message":"Done","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":86,"context_line":"- **SUSPENDED**: The audit has been temporarily paused by an administrator."},{"line_number":87,"context_line":""},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"Transitions:"},{"line_number":90,"context_line":"- An audit is created and enters the **PENDING** state."},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"- When the scheduled time arrives, a **PENDING** audit becomes **ONGOING**."}],"source_content_type":"text/x-rst","patch_set":7,"id":"4ee94bbe_81df7946","line":89,"range":{"start_line":89,"start_character":0,"end_line":89,"end_character":2},"updated":"2025-08-13 08:04:28.000000000","message":"+1 i like having transitions section for continuous audits given that it\u0027s a bit special but I include information about the actionplans created by continuous audits. Specifically the fact that when a new actionplan is created by an continuous audit, the previous ones, created in previous exeutions of the same continuous audits, is moved to CANCELLED state. Only the latest actionplan from a continuous audit stays in RECOMMENDED. I know you are explaining it at the end, but i think it\u0027s worthy to explain it from the beginning to explain how continous are expected to work.\n\nActually, we may add somewhere a note to clarify that \"Enable the auto-trigger option if you want to automatically apply action plans generated by continuous audits upon creation.\"\n\nIMO, continouous audits can be good candidates to enable auto-trigger (in some cases, at least).","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":false,"context_lines":[{"line_number":86,"context_line":"- **SUSPENDED**: The audit has been temporarily paused by an administrator."},{"line_number":87,"context_line":""},{"line_number":88,"context_line":""},{"line_number":89,"context_line":"Transitions:"},{"line_number":90,"context_line":"- An audit is created and enters the **PENDING** state."},{"line_number":91,"context_line":""},{"line_number":92,"context_line":"- When the scheduled time arrives, a **PENDING** audit becomes **ONGOING**."}],"source_content_type":"text/x-rst","patch_set":7,"id":"06acee6d_f9d2630c","line":89,"range":{"start_line":89,"start_character":0,"end_line":89,"end_character":2},"in_reply_to":"4ee94bbe_81df7946","updated":"2025-08-14 07:42:15.000000000","message":"Done","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":91,"context_line":""},{"line_number":92,"context_line":"- When the scheduled time arrives, a **PENDING** audit becomes **ONGOING**."},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"- An **ONGOING** audit can either **SUCCEED** or **FAIL**."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"- A **SUCCEEDED** continuous audit will become **ONGOING** again at its next"},{"line_number":97,"context_line":"  scheduled interval."}],"source_content_type":"text/x-rst","patch_set":7,"id":"4851f857_d34b464e","line":94,"range":{"start_line":94,"start_character":0,"end_line":94,"end_character":2},"updated":"2025-08-13 08:04:28.000000000","message":"I have doubts about this. I think a successfull execution of an continuous audit does not move the audit from ONGOING to SUCCEEDED state.\n\nIn case it fails to execute, it goes to FAILED state and is not longer executed (I\u0027m pretty sure of this but I\u0027d like to test it).","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":false,"context_lines":[{"line_number":91,"context_line":""},{"line_number":92,"context_line":"- When the scheduled time arrives, a **PENDING** audit becomes **ONGOING**."},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"- An **ONGOING** audit can either **SUCCEED** or **FAIL**."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"- A **SUCCEEDED** continuous audit will become **ONGOING** again at its next"},{"line_number":97,"context_line":"  scheduled interval."}],"source_content_type":"text/x-rst","patch_set":7,"id":"818b764a_58ab7fca","line":94,"range":{"start_line":94,"start_character":0,"end_line":94,"end_character":2},"in_reply_to":"4851f857_d34b464e","updated":"2025-08-14 07:42:15.000000000","message":"Done","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":93,"context_line":""},{"line_number":94,"context_line":"- An **ONGOING** audit can either **SUCCEED** or **FAIL**."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"- A **SUCCEEDED** continuous audit will become **ONGOING** again at its next"},{"line_number":97,"context_line":"  scheduled interval."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"- An administrator can **CANCEL** an audit that is **PENDING** or **ONGOING**."},{"line_number":100,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"36ede506_f9fc148f","line":97,"range":{"start_line":96,"start_character":2,"end_line":97,"end_character":21},"updated":"2025-08-13 08:04:28.000000000","message":"Same comment, i think continuous audits stay in ONGOING state, do not switch between ONGOING and SUCCEEDED on each execution.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":false,"context_lines":[{"line_number":93,"context_line":""},{"line_number":94,"context_line":"- An **ONGOING** audit can either **SUCCEED** or **FAIL**."},{"line_number":95,"context_line":""},{"line_number":96,"context_line":"- A **SUCCEEDED** continuous audit will become **ONGOING** again at its next"},{"line_number":97,"context_line":"  scheduled interval."},{"line_number":98,"context_line":""},{"line_number":99,"context_line":"- An administrator can **CANCEL** an audit that is **PENDING** or **ONGOING**."},{"line_number":100,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"4a78ede4_6c2b5298","line":97,"range":{"start_line":96,"start_character":2,"end_line":97,"end_character":21},"in_reply_to":"36ede506_f9fc148f","updated":"2025-08-14 07:42:15.000000000","message":"Done","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":103,"context_line":"- A **SUSPENDED** audit can be resumed by an administrator, at which point it"},{"line_number":104,"context_line":"  becomes **ONGOING** again."},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"- An administrator can **DELETE** an audit from any state."},{"line_number":107,"context_line":""},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"Create a Continuous Audit"}],"source_content_type":"text/x-rst","patch_set":7,"id":"a8fb188d_f5602eff","line":106,"range":{"start_line":106,"start_character":0,"end_line":106,"end_character":2},"updated":"2025-08-13 08:04:28.000000000","message":"To delete an audit, the audit state must be SUCCEEDED, FAILED, or CANCELLED","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":false,"context_lines":[{"line_number":103,"context_line":"- A **SUSPENDED** audit can be resumed by an administrator, at which point it"},{"line_number":104,"context_line":"  becomes **ONGOING** again."},{"line_number":105,"context_line":""},{"line_number":106,"context_line":"- An administrator can **DELETE** an audit from any state."},{"line_number":107,"context_line":""},{"line_number":108,"context_line":""},{"line_number":109,"context_line":"Create a Continuous Audit"}],"source_content_type":"text/x-rst","patch_set":7,"id":"0cf87538_3eeeea93","line":106,"range":{"start_line":106,"start_character":0,"end_line":106,"end_character":2},"in_reply_to":"a8fb188d_f5602eff","updated":"2025-08-14 07:42:15.000000000","message":"Done","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":115,"context_line":"Using Time Interval (seconds)"},{"line_number":116,"context_line":"------------------------------"},{"line_number":117,"context_line":""},{"line_number":118,"context_line":"This example creates a continuous audit that runs every 5 minutes"},{"line_number":119,"context_line":"(300 seconds):"},{"line_number":120,"context_line":""},{"line_number":121,"context_line":".. code-block:: bash"}],"source_content_type":"text/x-rst","patch_set":7,"id":"e6201f98_4f3ac30b","line":118,"range":{"start_line":118,"start_character":58,"end_line":118,"end_character":65},"updated":"2025-08-13 08:04:28.000000000","message":"I\u0027d specify ... runs every 5 minutes indefinitely.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":193,"context_line":"You can limit when the continuous audit runs by setting start and end times"},{"line_number":194,"context_line":"in a time-interval schedule."},{"line_number":195,"context_line":"The example below creates a continuous audit that runs from 12:00 to 13:00"},{"line_number":196,"context_line":"with a 5 minute interval."},{"line_number":197,"context_line":""},{"line_number":198,"context_line":".. code-block:: bash"},{"line_number":199,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"6ee38f12_09dba7e1","line":196,"updated":"2025-08-13 08:04:28.000000000","message":"I\u0027d specify times are in the timezone configured in the environment where the decision-engine service is running on (is this the expected behaviour, right?).\n\nI\u0027d mention and put an example of format for start_time and end_time, something like. Format  ISO 8601 is expected for start and end times fields as for example \u00272025-08-13T14:30:00\u0027.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":false,"context_lines":[{"line_number":193,"context_line":"You can limit when the continuous audit runs by setting start and end times"},{"line_number":194,"context_line":"in a time-interval schedule."},{"line_number":195,"context_line":"The example below creates a continuous audit that runs from 12:00 to 13:00"},{"line_number":196,"context_line":"with a 5 minute interval."},{"line_number":197,"context_line":""},{"line_number":198,"context_line":".. code-block:: bash"},{"line_number":199,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"0b5a4ace_c27d4f95","line":196,"in_reply_to":"6ee38f12_09dba7e1","updated":"2025-08-14 07:42:15.000000000","message":"Done","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":338,"context_line":"  | End Time      | None                                 |"},{"line_number":339,"context_line":"  | Force         | False                                |"},{"line_number":340,"context_line":"  +---------------+--------------------------------------+"},{"line_number":341,"context_line":""},{"line_number":342,"context_line":"List Generated Action Plans"},{"line_number":343,"context_line":"---------------------------"},{"line_number":344,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"3d1f75b2_73c09f6f","line":341,"updated":"2025-08-13 08:04:28.000000000","message":"I\u0027d add a note, \"*Note:* you can find the time for next execution for a continuous audit in the \"Next Run Time\" field on `openstack optimize audit show \u003caudit name or id\u003e` command. Given that it\u0027s specific field for continuous audit.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":false,"context_lines":[{"line_number":338,"context_line":"  | End Time      | None                                 |"},{"line_number":339,"context_line":"  | Force         | False                                |"},{"line_number":340,"context_line":"  +---------------+--------------------------------------+"},{"line_number":341,"context_line":""},{"line_number":342,"context_line":"List Generated Action Plans"},{"line_number":343,"context_line":"---------------------------"},{"line_number":344,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"ae66d9ae_5e741b75","line":341,"in_reply_to":"3d1f75b2_73c09f6f","updated":"2025-08-14 07:42:15.000000000","message":"Done","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":383,"context_line":""},{"line_number":384,"context_line":"  $ openstack optimize audit update 550e8400-e29b-41d4-a716-446655440000 replace interval\u003d900"},{"line_number":385,"context_line":""},{"line_number":386,"context_line":"The Decision Engine will automatically reschedule the audit with the new"},{"line_number":387,"context_line":"interval."},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"Modify End Time"},{"line_number":390,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"76f7d415_c0f6a0d6","line":387,"range":{"start_line":386,"start_character":0,"end_line":387,"end_character":9},"updated":"2025-08-13 08:04:28.000000000","message":"You tested this? I had doubts the decision-engine automatically refresh the audit configurations after it\u0027s updated via API call.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9649e2abeb78bf224b5a992fa6fcef8f1176bcbb","unresolved":true,"context_lines":[{"line_number":383,"context_line":""},{"line_number":384,"context_line":"  $ openstack optimize audit update 550e8400-e29b-41d4-a716-446655440000 replace interval\u003d900"},{"line_number":385,"context_line":""},{"line_number":386,"context_line":"The Decision Engine will automatically reschedule the audit with the new"},{"line_number":387,"context_line":"interval."},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"Modify End Time"},{"line_number":390,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"68318b16_03f69b1c","line":387,"range":{"start_line":386,"start_character":0,"end_line":387,"end_character":9},"in_reply_to":"0b1d1ccb_e3868cfd","updated":"2025-08-14 12:25:51.000000000","message":"Regarding endtime update, I have another example https://paste.openstack.org/raw/bFjM9Kr48YApTF5faU4R/ , Here when we update the end_time, the audit actually ends on that time. I hope it answers the above question. Or am I missed something, Please guide me on that.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"4c0be6df6b4e0b1c0ca96661925cea15aa38e3a3","unresolved":true,"context_lines":[{"line_number":383,"context_line":""},{"line_number":384,"context_line":"  $ openstack optimize audit update 550e8400-e29b-41d4-a716-446655440000 replace interval\u003d900"},{"line_number":385,"context_line":""},{"line_number":386,"context_line":"The Decision Engine will automatically reschedule the audit with the new"},{"line_number":387,"context_line":"interval."},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"Modify End Time"},{"line_number":390,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"0b1d1ccb_e3868cfd","line":387,"range":{"start_line":386,"start_character":0,"end_line":387,"end_character":9},"in_reply_to":"5857b957_8f9d6d07","updated":"2025-08-14 11:27:13.000000000","message":"Here is an example of updating interval, https://paste.openstack.org/raw/bsvwO8id0TQ22cG98Fu8/ if we see the actionplan table, actionplan got cancelled after updated interval. It seems that interval update is working fine.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"6161c8c58e1efab79e517b32e5e5ea51ac89d841","unresolved":true,"context_lines":[{"line_number":383,"context_line":""},{"line_number":384,"context_line":"  $ openstack optimize audit update 550e8400-e29b-41d4-a716-446655440000 replace interval\u003d900"},{"line_number":385,"context_line":""},{"line_number":386,"context_line":"The Decision Engine will automatically reschedule the audit with the new"},{"line_number":387,"context_line":"interval."},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"Modify End Time"},{"line_number":390,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"3fde5ed3_562a0911","line":387,"range":{"start_line":386,"start_character":0,"end_line":387,"end_character":9},"in_reply_to":"68318b16_03f69b1c","updated":"2025-08-14 14:15:01.000000000","message":"Thanks for those tests, that\u0027s the case I had doubts about. So, apparently the continuous jobs handler is reading all the non-finished audits from database on each execution, so the new values are taken in following run, so working as expected. I\u0027m not sure that\u0027s optimum from a db consumption point of view, but that\u0027s another topic.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"d8c2f38c10fb514af98190f0b210b852e84326a0","unresolved":true,"context_lines":[{"line_number":383,"context_line":""},{"line_number":384,"context_line":"  $ openstack optimize audit update 550e8400-e29b-41d4-a716-446655440000 replace interval\u003d900"},{"line_number":385,"context_line":""},{"line_number":386,"context_line":"The Decision Engine will automatically reschedule the audit with the new"},{"line_number":387,"context_line":"interval."},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"Modify End Time"},{"line_number":390,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"5857b957_8f9d6d07","line":387,"range":{"start_line":386,"start_character":0,"end_line":387,"end_character":9},"in_reply_to":"732ecdfa_c8106534","updated":"2025-08-14 09:10:06.000000000","message":"Thanks for those tests. Just one note, those tests show that the change is applied in the database, so the API shows it. My doubt is if the decision-engine refresh the configuration of the audit that it really applies. The API calls may show everything correct but the decision engine may keep having the old information about the audit. Actually, in your log after updating the end_date, the next_run_time is still pointing to the old one.\n\nMy question for that test is, was the audit moved to SUCCEEDED at \u00272025-08-14T07:35:38\u0027 or at 2025-08-14T07:40:38?\n\nThe other question is, if we update the interval, does it really applies when calculating the next execution?","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":true,"context_lines":[{"line_number":383,"context_line":""},{"line_number":384,"context_line":"  $ openstack optimize audit update 550e8400-e29b-41d4-a716-446655440000 replace interval\u003d900"},{"line_number":385,"context_line":""},{"line_number":386,"context_line":"The Decision Engine will automatically reschedule the audit with the new"},{"line_number":387,"context_line":"interval."},{"line_number":388,"context_line":""},{"line_number":389,"context_line":"Modify End Time"},{"line_number":390,"context_line":"---------------"}],"source_content_type":"text/x-rst","patch_set":7,"id":"732ecdfa_c8106534","line":387,"range":{"start_line":386,"start_character":0,"end_line":387,"end_character":9},"in_reply_to":"76f7d415_c0f6a0d6","updated":"2025-08-14 07:42:15.000000000","message":"this works https://paste.openstack.org/raw/bSTCwcyXwgbTQ6CavojQ/ only if audit is in pending state or ongoing state. If the audit already successed then it will update next end time but it does not restart the audit.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":389,"context_line":"Modify End Time"},{"line_number":390,"context_line":"---------------"},{"line_number":391,"context_line":""},{"line_number":392,"context_line":"You can change the end time of a running continuous audit:"},{"line_number":393,"context_line":""},{"line_number":394,"context_line":".. code-block:: bash"},{"line_number":395,"context_line":""}],"source_content_type":"text/x-rst","patch_set":7,"id":"895d3d5b_6b1ebb1c","line":392,"range":{"start_line":392,"start_character":0,"end_line":392,"end_character":2},"updated":"2025-08-13 08:04:28.000000000","message":"ditto.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":429,"context_line":"- Minimum recommended: 60 seconds"},{"line_number":430,"context_line":"- Common values: 300 (5 min), 600 (10 min), 1800 (30 min), 3600 (1 hour)"},{"line_number":431,"context_line":""},{"line_number":432,"context_line":"**Cron Expressions (5 format fields):**"},{"line_number":433,"context_line":""},{"line_number":434,"context_line":"- ``0 * * * *``: Every hour at minute 0"},{"line_number":435,"context_line":"- ``*/15 * * * *``: Every 15 minutes"}],"source_content_type":"text/x-rst","patch_set":7,"id":"c3610f2d_761865db","line":432,"range":{"start_line":432,"start_character":0,"end_line":432,"end_character":2},"updated":"2025-08-13 08:04:28.000000000","message":"we may add a link to wikipedia or https://pubs.opengroup.org/onlinepubs/9799919799/utilities/crontab.html","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":false,"context_lines":[{"line_number":429,"context_line":"- Minimum recommended: 60 seconds"},{"line_number":430,"context_line":"- Common values: 300 (5 min), 600 (10 min), 1800 (30 min), 3600 (1 hour)"},{"line_number":431,"context_line":""},{"line_number":432,"context_line":"**Cron Expressions (5 format fields):**"},{"line_number":433,"context_line":""},{"line_number":434,"context_line":"- ``0 * * * *``: Every hour at minute 0"},{"line_number":435,"context_line":"- ``*/15 * * * *``: Every 15 minutes"}],"source_content_type":"text/x-rst","patch_set":7,"id":"b0989365_a3dc0f4a","line":432,"range":{"start_line":432,"start_character":0,"end_line":432,"end_character":2},"in_reply_to":"c3610f2d_761865db","updated":"2025-08-14 07:42:15.000000000","message":"Done","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":16312,"name":"Alfredo Moralejo","email":"amoralej@redhat.com","username":"amoralej"},"change_message_id":"ae1a40a8258433b4525b7fdaf363854ed688136c","unresolved":true,"context_lines":[{"line_number":437,"context_line":"- ``30 2 * * *``: Daily at 2:30 AM"},{"line_number":438,"context_line":""},{"line_number":439,"context_line":""},{"line_number":440,"context_line":"Decision Engine Configuration"},{"line_number":441,"context_line":"-----------------------------"},{"line_number":442,"context_line":""},{"line_number":443,"context_line":"The continuous audit polling interval is configured in ``watcher.conf``:"}],"source_content_type":"text/x-rst","patch_set":7,"id":"ca329a77_8f4a7954","line":440,"range":{"start_line":440,"start_character":0,"end_line":440,"end_character":2},"updated":"2025-08-13 08:04:28.000000000","message":"This info may be more suited to be included in the configuration guide, given that a regular user may not have even access to the configuration files and details. Anyway, not a big issue.","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"9f9f2b915ed9f8b01fbefa29c2ce0d6f55e66d08","unresolved":false,"context_lines":[{"line_number":437,"context_line":"- ``30 2 * * *``: Daily at 2:30 AM"},{"line_number":438,"context_line":""},{"line_number":439,"context_line":""},{"line_number":440,"context_line":"Decision Engine Configuration"},{"line_number":441,"context_line":"-----------------------------"},{"line_number":442,"context_line":""},{"line_number":443,"context_line":"The continuous audit polling interval is configured in ``watcher.conf``:"}],"source_content_type":"text/x-rst","patch_set":7,"id":"90fafd0e_946c9e8a","line":440,"range":{"start_line":440,"start_character":0,"end_line":440,"end_character":2},"in_reply_to":"ca329a77_8f4a7954","updated":"2025-08-14 07:42:15.000000000","message":"Acknowledged","commit_id":"166ba7a1503470a0699702b8468b139bd5c071ac"}],"doc/source/user/continuous_type_audit.rst":[{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"49930c1dd9269313a0256d4652f51e5da8d98600","unresolved":true,"context_lines":[{"line_number":27,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"A continuous audit differs from a oneshot audit in that it runs repeatedly"},{"line_number":30,"context_line":"at specified intervals. The Watcher Decision Engine uses APScheduler to manage"},{"line_number":31,"context_line":"the scheduling of continuous audits, supporting both time-based intervals"},{"line_number":32,"context_line":"(in seconds) and cron-like expressions for more complex scheduling patterns."},{"line_number":33,"context_line":""}],"source_content_type":"text/x-rst","patch_set":10,"id":"0c45b1fd_705bfb20","line":30,"range":{"start_line":30,"start_character":57,"end_line":30,"end_character":68},"updated":"2025-09-23 12:09:01.000000000","message":"The user don\u0027t really need to know what is APScheduler to work with audits.","commit_id":"abdbbb8ec1e5de2d2715df71aa8ed05465cdb42d"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"bd4bccd0d8156c9f5e323348bf6e92560ac411e8","unresolved":false,"context_lines":[{"line_number":27,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"},{"line_number":28,"context_line":""},{"line_number":29,"context_line":"A continuous audit differs from a oneshot audit in that it runs repeatedly"},{"line_number":30,"context_line":"at specified intervals. The Watcher Decision Engine uses APScheduler to manage"},{"line_number":31,"context_line":"the scheduling of continuous audits, supporting both time-based intervals"},{"line_number":32,"context_line":"(in seconds) and cron-like expressions for more complex scheduling patterns."},{"line_number":33,"context_line":""}],"source_content_type":"text/x-rst","patch_set":10,"id":"4246db47_2596a374","line":30,"range":{"start_line":30,"start_character":57,"end_line":30,"end_character":68},"in_reply_to":"0c45b1fd_705bfb20","updated":"2025-09-23 13:13:26.000000000","message":"Done","commit_id":"abdbbb8ec1e5de2d2715df71aa8ed05465cdb42d"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"49930c1dd9269313a0256d4652f51e5da8d98600","unresolved":true,"context_lines":[{"line_number":38,"context_line":"- Testing continuous audit functionality"},{"line_number":39,"context_line":"- Development and debugging"},{"line_number":40,"context_line":"- Learning how Watcher works"},{"line_number":41,"context_line":"- Verifying system integration"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Prerequisites"},{"line_number":44,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":10,"id":"ef8c6d1f_8afdb2ff","line":41,"range":{"start_line":41,"start_character":0,"end_line":41,"end_character":30},"updated":"2025-09-23 12:09:01.000000000","message":"I would not say that, it doesn\u0027t interact with other services like nova, cinder or with any watcher\u0027s CDM, doesn\u0027t test any metric collection from any datasource too.","commit_id":"abdbbb8ec1e5de2d2715df71aa8ed05465cdb42d"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"bd4bccd0d8156c9f5e323348bf6e92560ac411e8","unresolved":false,"context_lines":[{"line_number":38,"context_line":"- Testing continuous audit functionality"},{"line_number":39,"context_line":"- Development and debugging"},{"line_number":40,"context_line":"- Learning how Watcher works"},{"line_number":41,"context_line":"- Verifying system integration"},{"line_number":42,"context_line":""},{"line_number":43,"context_line":"Prerequisites"},{"line_number":44,"context_line":"\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d\u003d"}],"source_content_type":"text/x-rst","patch_set":10,"id":"7e35abc1_c438f4b2","line":41,"range":{"start_line":41,"start_character":0,"end_line":41,"end_character":30},"in_reply_to":"ef8c6d1f_8afdb2ff","updated":"2025-09-23 13:13:26.000000000","message":"Done","commit_id":"abdbbb8ec1e5de2d2715df71aa8ed05465cdb42d"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"49930c1dd9269313a0256d4652f51e5da8d98600","unresolved":true,"context_lines":[{"line_number":91,"context_line":""},{"line_number":92,"context_line":"- An administrator can **SUSPEND** an **ONGOING** audit."},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"- A **SUSPENDED** audit can be resumed by an administrator, at which point it"},{"line_number":95,"context_line":"  becomes **ONGOING** again."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"- An administrator can **DELETE** an audit only when its state is"},{"line_number":98,"context_line":"  **SUCCEEDED**, **FAILED**, or **CANCELLED**."}],"source_content_type":"text/x-rst","patch_set":10,"id":"6811d4a6_b553c27c","line":95,"range":{"start_line":94,"start_character":0,"end_line":95,"end_character":28},"updated":"2025-09-23 12:09:01.000000000","message":"wondering if we have an api test for this scenario..","commit_id":"abdbbb8ec1e5de2d2715df71aa8ed05465cdb42d"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"bd4bccd0d8156c9f5e323348bf6e92560ac411e8","unresolved":false,"context_lines":[{"line_number":91,"context_line":""},{"line_number":92,"context_line":"- An administrator can **SUSPEND** an **ONGOING** audit."},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"- A **SUSPENDED** audit can be resumed by an administrator, at which point it"},{"line_number":95,"context_line":"  becomes **ONGOING** again."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"- An administrator can **DELETE** an audit only when its state is"},{"line_number":98,"context_line":"  **SUCCEEDED**, **FAILED**, or **CANCELLED**."}],"source_content_type":"text/x-rst","patch_set":10,"id":"b08f6751_58636960","line":95,"range":{"start_line":94,"start_character":0,"end_line":95,"end_character":28},"in_reply_to":"6811d4a6_b553c27c","updated":"2025-09-23 13:13:26.000000000","message":"Done","commit_id":"abdbbb8ec1e5de2d2715df71aa8ed05465cdb42d"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"250d24e076aff096ad9a63cdc5fa5149bc209085","unresolved":false,"context_lines":[{"line_number":91,"context_line":""},{"line_number":92,"context_line":"- An administrator can **SUSPEND** an **ONGOING** audit."},{"line_number":93,"context_line":""},{"line_number":94,"context_line":"- A **SUSPENDED** audit can be resumed by an administrator, at which point it"},{"line_number":95,"context_line":"  becomes **ONGOING** again."},{"line_number":96,"context_line":""},{"line_number":97,"context_line":"- An administrator can **DELETE** an audit only when its state is"},{"line_number":98,"context_line":"  **SUCCEEDED**, **FAILED**, or **CANCELLED**."}],"source_content_type":"text/x-rst","patch_set":10,"id":"a3145f9a_332b6c17","line":95,"range":{"start_line":94,"start_character":0,"end_line":95,"end_character":28},"in_reply_to":"b08f6751_58636960","updated":"2025-09-23 13:25:02.000000000","message":"Based on this https://github.com/openstack/watcher-tempest-plugin/blob/master/watcher_tempest_plugin/tests/api/admin/test_audit.py there is no such test case, I think we can cover it in continuous audit scenario test. I will add that one.","commit_id":"abdbbb8ec1e5de2d2715df71aa8ed05465cdb42d"},{"author":{"_account_id":30002,"name":"Douglas Viroel","email":"viroel@gmail.com","username":"dviroel"},"change_message_id":"49930c1dd9269313a0256d4652f51e5da8d98600","unresolved":true,"context_lines":[{"line_number":99,"context_line":""},{"line_number":100,"context_line":".. note::"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"   We can enable the auto-trigger option if you want to automatically apply action"},{"line_number":103,"context_line":"   plans generated by continuous audits as soon as they are created."},{"line_number":104,"context_line":"   Depending on the environment, continuous audits are often good candidates for"},{"line_number":105,"context_line":"   auto-trigger."}],"source_content_type":"text/x-rst","patch_set":10,"id":"ad4d407a_fdb289b4","line":102,"range":{"start_line":102,"start_character":3,"end_line":102,"end_character":5},"updated":"2025-09-23 12:09:01.000000000","message":"You can enabled...?","commit_id":"abdbbb8ec1e5de2d2715df71aa8ed05465cdb42d"},{"author":{"_account_id":12393,"name":"chandan kumar","display_name":"Chandan Kumar","email":"chkumar@redhat.com","username":"chkumar246"},"change_message_id":"bd4bccd0d8156c9f5e323348bf6e92560ac411e8","unresolved":false,"context_lines":[{"line_number":99,"context_line":""},{"line_number":100,"context_line":".. note::"},{"line_number":101,"context_line":""},{"line_number":102,"context_line":"   We can enable the auto-trigger option if you want to automatically apply action"},{"line_number":103,"context_line":"   plans generated by continuous audits as soon as they are created."},{"line_number":104,"context_line":"   Depending on the environment, continuous audits are often good candidates for"},{"line_number":105,"context_line":"   auto-trigger."}],"source_content_type":"text/x-rst","patch_set":10,"id":"0fc2864e_c5600c35","line":102,"range":{"start_line":102,"start_character":3,"end_line":102,"end_character":5},"in_reply_to":"ad4d407a_fdb289b4","updated":"2025-09-23 13:13:26.000000000","message":"Done","commit_id":"abdbbb8ec1e5de2d2715df71aa8ed05465cdb42d"}]}
