Example #1
0
    def _save_services(self, old_autochecks: SetAutochecksTable,
                       checks: SetAutochecksTable, need_sync: bool) -> None:
        message = _(
            "Saved check configuration of host '%s' with %d services") % (
                self._host.name(),
                len(checks),
            )
        watolib.add_service_change(
            host=self._host,
            action_name="set-autochecks",
            text=message,
            need_sync=need_sync,
            diff_text=watolib.make_diff_text(
                _make_host_audit_log_object(old_autochecks),
                _make_host_audit_log_object(checks)),
        )

        site_id = self._host.site_id()
        site_status = states().get(site_id, SiteStatus({}))
        if is_pre_17_remote_site(site_status):
            # is this branch still needed?
            set_autochecks(
                site_id,
                self._host.name(),
                {x: y[1:3]
                 for x, y in checks.items()},  # type: ignore[misc]
            )
        else:
            set_autochecks(
                site_id,
                self._host.name(),
                checks,
            )
Example #2
0
def _make_host_audit_log_object(checks: SetAutochecksTable) -> Set[str]:
    """The resulting object is used for building object diffs"""
    return {v[0] for v in checks.values()}