Problème disque dur suite mise à jour

Bonjour @JAG,

Depuis la dernière mise à jour du plugin (version stable) j’ai vu un soucis sur les disques durs.

Pour ne pas modifier la config des équipements, j’ai supprimé les commandes et refait un scan .

Maintenant ce ne sont plus les disques mais les partitions qui remontent.
Le soucis est que j’ai un disque avec 2 partitions, une seule est remontée.

Voilà les logs du scan en debug:

[2020-10-16 05:13:24][DEBUG] : ┌───────── Création équipement spécifique : Disque Dur
[2020-10-16 05:13:24][DEBUG] : ┌───────── Début de Mise à jour
[2020-10-16 05:13:24][DEBUG] : │ [Freebox Request Connexion] : GET sur la l'adresse mafreebox.freebox.fr/api/v8/storage/disk/([])
[2020-10-16 05:13:24][DEBUG] : │ [Freebox Request Result] : {"success":true,"result":[{"idle_duration":26,"read_error_requests":0,"read_requests":411357,"spinning":true,"table_type":"msdos","firmware":"SC16","type":"internal","idle":true,"connector":0,"id":0,"write_error_requests":0,"time_before_spindown":574,"state":"enabled","write_requests":1040796,"total_bytes":250050000000,"model":"ST9250311CS","active_duration":0,"temp":33,"serial":"6VCW9YR4","partitions":[{"fstype":"ext4","total_bytes":244950000000,"label":"Disque dur","id":2,"internal":true,"fsck_result":"no_run_yet","state":"mounted","disk_id":0,"free_bytes":198410000000,"used_bytes":34070000000,"path":"L0Rpc3F1ZSBkdXI="}]},{"idle_duration":0,"read_error_requests":0,"read_requests":0,"spinning":false,"table_type":"msdos","firmware":"","type":"usb","idle":false,"connector":0,"id":1000,"write_error_requests":0,"state":"enabled","write_requests":0,"total_bytes":4000000000000,"model":"","active_duration":0,"temp":0,"serial":"","partitions":[{"fstype":"ntfs","total_bytes":4000000000000,"label":"SAMSUNG","id":1001,"internal":false,"fsck_result":"no_run_yet","state":"mounted","disk_id":1000,"free_bytes":22470000000,"used_bytes":3970000000000,"path":"L1NBTVNVTkc="}]},{"idle_duration":0,"read_error_requests":0,"read_requests":0,"spinning":false,"table_type":"gpt","firmware":"","type":"usb","idle":false,"connector":1,"id":2000,"write_error_requests":0,"state":"enabled","write_requests":0,"total_bytes":2000000000000,"model":"","active_duration":0,"temp":0,"serial":"","partitions":[{"fstype":"vfat","total_bytes":206470000,"label":"EFI","id":2001,"internal":false,"fsck_result":"no_run_yet","state":"mounted","disk_id":2000,"free_bytes":2040,"used_bytes":206470000,"path":"L0VGSQ=="},{"fstype":"ntfs","total_bytes":2000000000000,"label":"POUMI_2TO","id":2002,"internal":false,"fsck_result":"no_run_yet","state":"mounted","disk_id":2000,"free_bytes":1790000000000,"used_bytes":202440000000,"path":"L1BPVU1JXzJUTw=="}]}]}
[2020-10-16 05:13:24][DEBUG] : └─────────
[2020-10-16 05:13:24][DEBUG] : ┌───────── Création Disque
[2020-10-16 05:13:24][DEBUG] : │ Name: Disque Dur -- LogicalID : disk -- catégorie : default -- Equipement Type :  -- Logical ID Equip :  -- Cron : 5 */12 * * * -- Objet :
[2020-10-16 05:13:24][DEBUG] : ┌───────── Début de Mise à jour
[2020-10-16 05:13:24][DEBUG] : │ [Freebox Request Connexion] : GET sur la l'adresse mafreebox.freebox.fr/api/v8/storage/disk/0(null)
[2020-10-16 05:13:24][DEBUG] : │ [Freebox Request Result] : {"success":true,"result":{"idle_duration":26,"read_error_requests":0,"read_requests":411357,"spinning":true,"table_type":"msdos","firmware":"SC16","type":"internal","idle":true,"connector":0,"id":0,"write_error_requests":0,"time_before_spindown":574,"state":"enabled","write_requests":1040796,"total_bytes":250050000000,"model":"ST9250311CS","active_duration":0,"temp":33,"serial":"6VCW9YR4","partitions":[{"fstype":"ext4","total_bytes":244950000000,"label":"Disque dur","id":2,"internal":true,"fsck_result":"no_run_yet","state":"mounted","disk_id":0,"free_bytes":198410000000,"used_bytes":34070000000,"path":"L0Rpc3F1ZSBkdXI="}]}}
[2020-10-16 05:13:24][DEBUG] : └─────────
[2020-10-16 05:13:24][DEBUG] : >───────── Occupation du disque : 0.13908961012452
[2020-10-16 05:13:24][DEBUG] : ┌───────── Début de Mise à jour
[2020-10-16 05:13:24][DEBUG] : │ [Freebox Request Connexion] : GET sur la l'adresse mafreebox.freebox.fr/api/v8/storage/disk/2000(null)
[2020-10-16 05:13:24][DEBUG] : │ [Freebox Request Result] : {"success":true,"result":{"idle_duration":0,"read_error_requests":0,"read_requests":0,"spinning":false,"table_type":"gpt","firmware":"","type":"usb","idle":false,"connector":1,"id":2000,"write_error_requests":0,"state":"enabled","write_requests":0,"total_bytes":2000000000000,"model":"","active_duration":0,"temp":0,"serial":"","partitions":[{"fstype":"vfat","total_bytes":206470000,"label":"EFI","id":2001,"internal":false,"fsck_result":"no_run_yet","state":"mounted","disk_id":2000,"free_bytes":2040,"used_bytes":206470000,"path":"L0VGSQ=="},{"fstype":"ntfs","total_bytes":2000000000000,"label":"POUMI_2TO","id":2002,"internal":false,"fsck_result":"no_run_yet","state":"mounted","disk_id":2000,"free_bytes":1790000000000,"used_bytes":202440000000,"path":"L1BPVU1JXzJUTw=="}]}}
[2020-10-16 05:13:24][DEBUG] : └─────────
[2020-10-16 05:13:24][DEBUG] : >───────── Occupation du disque : 1
[2020-10-16 05:13:24][DEBUG] : ┌───────── Début de Mise à jour
[2020-10-16 05:13:24][DEBUG] : │ [Freebox Request Connexion] : GET sur la l'adresse mafreebox.freebox.fr/api/v8/storage/disk/1000(null)
[2020-10-16 05:13:24][DEBUG] : │ [Freebox Request Result] : {"success":true,"result":{"idle_duration":0,"read_error_requests":0,"read_requests":0,"spinning":false,"table_type":"msdos","firmware":"","type":"usb","idle":false,"connector":0,"id":1000,"write_error_requests":0,"state":"enabled","write_requests":0,"total_bytes":4000000000000,"model":"","active_duration":0,"temp":0,"serial":"","partitions":[{"fstype":"ntfs","total_bytes":4000000000000,"label":"SAMSUNG","id":1001,"internal":false,"fsck_result":"no_run_yet","state":"mounted","disk_id":1000,"free_bytes":22470000000,"used_bytes":3970000000000,"path":"L1NBTVNVTkc="}]}}
[2020-10-16 05:13:24][DEBUG] : └─────────
[2020-10-16 05:13:24][DEBUG] : >───────── Occupation du disque : 0.9925
[2020-10-16 05:13:24][DEBUG] : │──────────> Disque  [internal] - 0
[2020-10-16 05:13:24][DEBUG] : │ Name : Disque dur - internal - ext4 -- Type : info -- LogicalID : 0 -- Template Widget / Ligne : core::horizontal/0-- Type de générique :  -- Inverser : 0 -- Icône : fas fa-hdd fa-2x -- Min/Max : 0/100 -- Calcul/Arrondi: #value#*100/2
[2020-10-16 05:13:24][DEBUG] : │──────────> Disque  [usb] - 1000
[2020-10-16 05:13:24][DEBUG] : │ Name : SAMSUNG - usb - ntfs -- Type : info -- LogicalID : 1000 -- Template Widget / Ligne : core::horizontal/0-- Type de générique :  -- Inverser : 0 -- Icône : fas fa-hdd fa-2x -- Min/Max : 0/100 -- Calcul/Arrondi: #value#*100/2
[2020-10-16 05:13:24][DEBUG] : │──────────> Disque  [usb] - 2000
[2020-10-16 05:13:24][DEBUG] : │ Name : EFI - usb - vfat -- Type : info -- LogicalID : 2000 -- Template Widget / Ligne : core::horizontal/0-- Type de générique :  -- Inverser : 0 -- Icône : fas fa-hdd fa-2x -- Min/Max : 0/100 -- Calcul/Arrondi: #value#*100/2
[2020-10-16 05:13:24][DEBUG] : └─────────
[2020-10-16 05:13:24][DEBUG] : └─────────

Le soucis est sur le disque avec l’id 2000:
On voit bien dans le log les 2 partitions (EFI et POUMI_2TO avec id 2001 et 2002) mais seule la commande EFI est créé avec l’id 2000 (du disque).

Une idée?

Hello
Depuis le début je n’ai géré qu’une seule partition

Ben non, il me semble que quelquechose a changé.
Le taux d’occupation était celui du disque global avant, maintenant c’est celui de la partition 1 non?

Je suis passé de 13% à 100% d’occupation.
La partition EFI est remplie à 100% mais pas le disque…

Ou alors ça affichait l’autre partition avant
Ou alors ça a toujours affiché une valeur fausse et j’ai jamais remarqué…

J’essaye de me rappeler ce que j’avais d’affiché avant, je te dis quoi.

Actuellement et comme avant

if (isset($disks['partitions'][0])) {
                    if ($disks['partitions'][0]['total_bytes'] != null) {
                        $value = $disks['partitions'][0]['used_bytes'] / $disks['partitions'][0]['total_bytes'];
                    } else {
                        $value = 0;
                    }

                    log::add('Freebox_OS', 'debug', '│──────────> Disque  [' . $disks['type'] . '] - ' . $disks['id']);

                    $command = $disk->AddCommand($disks['partitions'][0]['label'] . ' - ' . $disks['type'] . ' - ' . $disks['partitions'][0]['fstype'], $disks['id'], 'info', 'numeric', 'core::horizontal', '%', null, 1, 'default', 'default', 0, 'fas fa-hdd fa-2x', 0, '0', 100, null, '0', false, false, 'never', null, true, '#value#*100', 2);
                    $command->event($value);
                }

On ne gère qu’un seul disque .
Je n’ai modifié cela, j’ai juste géré si la partition $disks[‹ partitions ›][0] n’existe pas et que la division par zero pour éviter une erreur php

mais les calculs sont les mêmes donc c’est pas correct depuis longtemps

Je regarderai plus en profondeur ce week-end

bon…
je viens de redemarrer le pc qui du coup avait le dashboard non actualisé dans un onglet.

je confirme que la valeur était déjà a 100% avant, c’est moi qui ai révé…

c’est le fait de voir le nom de la partition qui m’a fait bizarre mais j’avais déjà le soucis avant :rofl:

Hello,
je viens de regarder le code
Depuis le début le plugin ne gére uniquement une seule partition.

L’amélioration @mld.sebastien a mis en lumière ce problème que je n’avais pas vu jusqu’a maintenant

Pour améliorer cette partie, il faut que je réécrive cette partie du code. A la fois pour la création des commandes ainsi que pour la mise à jour.
Je vais essayer de faire quelque chose mais cela va prendre du temps et c’est sûr à la prochaine mise à jour il faudra supprimer l’ensemble de l’équipement

Bon week-end

L’amélioration est disponible dans la beta de ce jour. Je pense qu’il faut supprimer tes disques vu que je n’ai pas de partition sur mes disques

se sera aussi disponible dans la stable de demain

parfait, j’ai les 2 partitions qui remontent :slight_smile:

Oui faut les supprimer, c’est ce que j’avais fait. Par contre c’est pas une partition c’est un disque dur de 5T et deux HDD 2T mis en Raid du coup sur jeedom dans le plugin ont les voir comme cela :

image

mon cas etait celui de 2 partitions sur le même disque qui du coup remontent bien.

je n’ai pas de RAID dans mes disques donc je ne peux pas te dire pour ce cas là.

Ah ok, j’avais pas trop compris, bien si cela fonctionne.