[IMP] maitenance_service_http_monitoring : move service tree view to maintenance_server_data
Some checks failed
pre-commit / pre-commit (pull_request) Failing after 1m35s

This commit is contained in:
Boris Gallet
2026-02-25 10:36:48 +01:00
parent ea255c184e
commit 0e70d3ea80
4 changed files with 50 additions and 27 deletions

View File

@@ -33,6 +33,18 @@
</field> </field>
</record> </record>
<record id="service_instance_view_tree" model="ir.ui.view">
<field name="name">service.instance.view.tree</field>
<field name="model">service.instance</field>
<field name="arch" type="xml">
<tree>
<field name="equipment_id"/>
<field name="service_id"/>
<field name="version_id"/>
</tree>
</field>
</record>
<!-- ACTIONS --> <!-- ACTIONS -->
<record id="service_action" model="ir.actions.act_window"> <record id="service_action" model="ir.actions.act_window">
<field name="name">Service</field> <field name="name">Service</field>
@@ -70,6 +82,18 @@
</field> </field>
</record> </record>
<record id="service_instance_action" model="ir.actions.act_window">
<field name="name">Services</field>
<field name="res_model">service.instance</field>
<field name="view_mode">tree</field>
<field name="view_id" ref="service_instance_view_tree"/>
<field name="help" type="html">
<p class="o_view_nocontent_smiling_face">
Add a new Service Instance
</p>
</field>
</record>
<!-- MENUS --> <!-- MENUS -->
<menuitem <menuitem
id="menu_maintenance_service" id="menu_maintenance_service"
@@ -92,4 +116,11 @@
action="backup_server_action" action="backup_server_action"
sequence="5" /> sequence="5" />
<menuitem
id="menu_maintenance_service_instance"
name="Services"
parent="maintenance.menu_maintenance_title"
action="service_instance_action"
sequence="35"/>
</odoo> </odoo>

View File

@@ -2,17 +2,20 @@
maintenance_service_http_monitoring maintenance_service_http_monitoring
====================================== ======================================
Module qui permet le monitoring des différents service en vérifiant leur réponse HTTP 200 : Module that allows monitoring of different services by checking their HTTP 200 responses:
- Utilise la notion de service de `maintenance_server_data` pour chaque équipement.
Si le service à une URL une requête est effectuée
- Ajout du mode maintenance pour un équipement :
- Permet de désactiver les checks HTTP pour X temps (défini dans le cron)
## Logique : - Uses the `maintenance_server_data` service for each device.
Si une requête est KO est quune tâche de maintenance est déjà créer le même jour,
aucune tâche nest ajouté.
Les valeurs par défaut pour les cron se trouvent dans `data/cron.xml` If the service has a URL, a request is made.
- Adds maintenance mode for a device:
- Allows disabling HTTP checks for a specified time (defined in the cron job).
## Logic:
If a request fails and a maintenance task has already been created for the same day,
no new task is added.
The default values for the cron jobs are located in `data/cron.xml`.
Installation Installation

View File

@@ -1,3 +1,2 @@
from . import service_instance from . import service_instance
from . import maintenance_equipment from . import maintenance_equipment
from . import res_config_settings

View File

@@ -1,30 +1,20 @@
<?xml version="1.0" encoding="UTF-8"?> <?xml version="1.0" encoding="UTF-8"?>
<odoo> <odoo>
<!-- Inherit from base tree view to add HTTP monitoring fields -->
<record id="service_instance_http_monitoring_tree" model="ir.ui.view"> <record id="service_instance_http_monitoring_tree" model="ir.ui.view">
<field name="name">service.instance.http.monitoring.tree</field> <field name="name">service.instance.http.monitoring.tree</field>
<field name="model">service.instance</field> <field name="model">service.instance</field>
<field name="inherit_id" ref="maintenance_server_data.service_instance_view_tree"/>
<field name="arch" type="xml"> <field name="arch" type="xml">
<tree decoration-danger="http_status_ok == False"> <tree position="attributes">
<field name="equipment_id"/> <attribute name="decoration-danger">http_status_ok == False</attribute>
<field name="service_id"/> </tree>
<field name="version_id"/> <field name="version_id" position="after">
<field name="service_url"/> <field name="service_url"/>
<field name="last_http_check_date"/> <field name="last_http_check_date"/>
<field name="last_http_status_code"/> <field name="last_http_status_code"/>
<field name="http_status_ok"/> <field name="http_status_ok"/>
</tree> </field>
</field> </field>
</record> </record>
<record id="service_instance_http_monitoring_action" model="ir.actions.act_window">
<field name="name">Services HTTP Monitoring</field>
<field name="res_model">service.instance</field>
<field name="view_mode">tree</field>
<field name="view_id" ref="service_instance_http_monitoring_tree"/>
<field name="domain">[("service_url", "!=", False)]</field>
<field name="help" type="html">
<p>Liste des services disposant d'une URL surveillée par le monitoring HTTP.</p>
</field>
</record>
<menuitem id="menu_service_instance_http_monitoring" name="Services HTTP Monitoring"
parent="maintenance.menu_maintenance_title" action="service_instance_http_monitoring_action" sequence="35"/>
</odoo> </odoo>