Project

General

Profile

Architecture #9645

Add a database table for node compliance

Added by François ARMAND about 1 year ago. Updated 11 months ago.

Status:
Released
Priority:
1
Category:
Architecture - Refactoring
Target version:
Target version (plugin):
Effort required:

Description

The table should contain compliance by node run.

The table is meant to store the nodeid, the run timestamp, the run expiration time (i.e until when the data is OK given the corresponding node configuration), the node configuration use to get that compliance (actually, perhaps even the full run analysis) and the compliance data.

We want to have two compliance data types: a sum-up that only contains node compliance (top level), and the full detauls down to value and messages, in JSON.
The node compliance (top-level) can also be json, it will accomodate extension in future, and even JSON queries at some point.

For now, we don't really need to use the table, just correctly populate it for future use and (today) debuggin/forensic.

Note: we are using compliance from two point in Rudder: Node and Rule. In the proposed scheme, we only take care of compliance by Node. The reason is that in the future, as soon as we can require PG 9.3, we will have access to JSON queries, and so we will be able to use them to get info by rule. That would also allow to get information by anything, not just rule and particulary by directives. And as said, for now we are just populating the table.

The correct place to update data seems to be when we receive new run, when compliance is calculated to populate the compliance cache.


Subtasks

Architecture #9943: Migration script to add compliance tableReleasedFrançois ARMAND

Architecture #9946: Migration script to add compliance tableReleasedFrançois ARMAND

Associated revisions

Revision 7cf89b0c
Added by François ARMAND about 1 year ago

Fixes #9645: Add a compliance table to store compliance by node by run

History

#1 Updated by François ARMAND about 1 year ago

  • Status changed from In progress to Pending technical review
  • Assignee changed from François ARMAND to Nicolas CHARLES
  • Pull Request set to https://github.com/Normation/rudder/pull/1384

#2 Updated by François ARMAND about 1 year ago

  • Status changed from Pending technical review to Pending release
  • % Done changed from 0 to 100

#3 Updated by Vincent MEMBRÉ 11 months ago

  • Subject changed from Add a table for node compliance to Add a database table for node compliance

#4 Updated by Vincent MEMBRÉ 11 months ago

  • Status changed from Pending release to Released

This bug has been fixed in Rudder 4.1.0 which was released today.

Also available in: Atom PDF