Domanda

Sto lavorando a un agent di monitoraggio che funziona con i sistemi che usano il kernel Linux. Aprendo / proc / stat, puoi facilmente sapere per quanto tempo una o tutte le CPU (aggregate) stanno bruciando in attesa del completamento delle richieste I / O.

Sto cercando di trovare un modo per suddividere quel numero in modo da poter distinguere tra I / O su disco e rete. Ad esempio, dopo aver convertito l'unità dai tick del kernel in secondi, si vede che tutte le CPU combinate hanno trascorso 1024 secondi in attesa di I / O. Mi piacerebbe sapere quanti di questi sono stati bruciati a causa di connessioni di rete lente.

Non sono sicuro che sia possibile, qualsiasi aiuto è apprezzato :) Non vedo nulla in / proc / net o sysfs che possa aiutare.

È stato utile?

Soluzione

Prova a guardare SystemTap . È molto simile a Solaris DTrace e puoi raggiungere diversi livelli di dettaglio.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top