EnglischFranzösischSpanisch

Ad


OnWorks-Favicon

blkparse – Online in der Cloud

Führen Sie blkparse im kostenlosen Hosting-Anbieter OnWorks über Ubuntu Online, Fedora Online, den Windows-Online-Emulator oder den MAC OS-Online-Emulator aus

Dies ist der Befehl blkparse, der beim kostenlosen Hosting-Anbieter OnWorks mit einer unserer zahlreichen kostenlosen Online-Workstations wie Ubuntu Online, Fedora Online, dem Windows-Online-Emulator oder dem MAC OS-Online-Emulator ausgeführt werden kann

PROGRAMM:

NAME/FUNKTION


blkparse – Erzeugt eine formatierte Ausgabe von Ereignisströmen von Blockgeräten

ZUSAMMENFASSUNG


blkparse [ Optionen ]

BESCHREIBUNG


Das blkparse Das Dienstprogramm versucht, Ereignisströme für verschiedene Geräte zu kombinieren
verschiedene CPUs und erzeugen eine formatierte Ausgabe der Ereignisinformationen. Genauer gesagt
übernimmt die (maschinenlesbare) Ausgabe des blktspur Dienstprogramm und konvertieren Sie es in ein schönes
formatierte und für Menschen lesbare Form.

Wie bei blktspur, einige Details bzgl blkparse wird zum Verständnis des Befehls beitragen
Linienoptionen unten dargestellt.

- Standardmäßig, blkparse erwartet, dass es in einem Nachbearbeitungsmodus ausgeführt wird; einer, wo die Spur
Ereignisse wurden durch eine frühere Ausführung von blktrace gespeichert und blkparse kombiniert Ereignisse
Streams und Dumping formatierter Daten.

blkparse kann durch Angabe gleichzeitig mit blktrace live ausgeführt werden -i - zu
blkparse und die Kombination mit der Live-Option für blktrace. Ein Beispiel wäre:

% blktrace -d /dev/sda -o - | blkparse -i -

– Sie können festlegen, wie viele Blkparse-Batches das Ereignis liest -b Option, die Standardeinstellung ist „to“.
Behandeln Sie Ereignisse in Stapeln von 512.

- Wenn Sie Ereignisspuren in blktrace mit unterschiedlichen Ausgabenamen gespeichert haben (über die -o
Option zu blktrace), müssen Sie denselben Eingabenamen über angeben -i .

- Das Format der Ausgabedaten kann über gesteuert werden -f or -F Optionen – siehe AUSGABE
Einzelheiten finden Sie unter BESCHREIBUNG UND FORMATIERUNG.

Standardmäßig sendet blkparse formatierte Daten an die Standardausgabe. Dies kann über geändert werden
-o Option, oder die Textausgabe kann über die deaktiviert werden -O Möglichkeit. Ein zusammengeführter Binärstrom kann sein
hergestellt unter Verwendung der -d .

OPTIONAL


-A Hex-Maske
--set-mask=Hex-Maske
Filtermaske einstellen auf Hex-Maske, siehe blktrace (8) für Masken

-a Maske"
--act-mask=Maske"
Speichern Maske" Zum aktuellen Filter siehe blktrace (8) für Masken

-D dir
--input-directory=dir
Vorbereiten dir um Dateinamen einzugeben

-b Portion
--batch={batch}
Standardeingabe-Lesestapelung

-i Datei
--Eingabe=Datei
Gibt den Basisnamen für Eingabedateien an – der Standardwert ist Gerät.blktrace.CPU.

Wie oben erwähnt, spezifizieren -i - läuft im Live-Modus mit blktrace (liest Daten aus
Standard in).

-F typ,fmt
--format=typ,fmt
-f fmt
--format-spec=fmt
Legt das Ausgabeformat fest (Einzelheiten finden Sie unter AUSGABEBESCHREIBUNG UND -FORMATIERUNG.)

Die Form -f gibt ein Format für alle Ereignisse an

Mit der Form -F kann ein Format für einen bestimmten Ereignistyp angegeben werden. Der
Einzelzeichen Typ Das Feld ist einer der in ACTION beschriebenen Aktionsspezifizierer
IDENTIFIKATOREN.

-M
--no-msgs
Wenn -d angegeben ist, wird die Ausgabe von Nachrichten in die Datei verhindert. (Dürfen
Reduzieren Sie die Größe der resultierenden Datei erheblich, wenn Sie den CFQ-E/A-Scheduler verwenden.)

-h
--hash-by-name
Hash-Prozesse nach Namen, nicht nach PID

-o Datei
--ausgabe=Datei
Ausgabedatei

-O
--no-text-output
Do nicht Erzeugt eine Textausgabe, die für binäre (-d) nur

-d Datei
--dump-binary=Datei
Binäre Ausgabedatei

-q
--ruhig
Ruhemodus

-s
--per-program-stats
Zeigt die Daten nach Programm sortiert an

-t
--track-ios
Zeitdeltas pro IO anzeigen

-w Spannweite
--stopwatch=Spannweite
Anzeigen von Spuren für die Spannweite angegeben – wobei span sein kann:
Endzeit -- Zeigt Spuren von Zeit 0 bis an Endzeit (in ns)
or
Start: Endzeit -- Spuren aus der Zeit anzeigen Anfang bis zur Endzeit (in ns).

-v
- ausführlich
Ausführlichere Randbemerkungen zu geringfügigen Fehlern

-V
--Version
Anzeigeversion

SPUR MASSNAHMEN


Folgende Trace-Aktionen werden erkannt:

C -- abschließen Eine zuvor gestellte Anfrage wurde abgeschlossen. In der Ausgabe werden die Details detailliert beschrieben
Sektor und Umfang dieser Anfrage sowie deren Erfolg oder Misserfolg.

D -- ausgegeben Eine Anforderung, die sich zuvor in der Blockschicht-Warteschlange oder im E/A befand
Der Zeitplaner wurde an den Fahrer gesendet.

I -- eingefügt Es wird eine Anfrage an den E/A-Scheduler zur Hinzufügung zum internen gesendet
Warteschlange und spätere Bedienung durch den Fahrer. Die Anfrage ist zu diesem Zeitpunkt vollständig formuliert.

Q -- In Warteschlange Dies weist auf die Absicht hin, E/A am angegebenen Ort in die Warteschlange zu stellen. Es liegen keine echten Anfragen vor
noch.

B -- prallte ab Die dazu beigefügten Datenseiten Bio sind von der Hardware nicht erreichbar und
muss an einen niedrigeren Speicherort zurückgesendet werden. Dies führt zu einer starken Verlangsamung der E/A
Leistung, da die Daten in/aus Kernel-Puffer kopiert werden müssen. Normalerweise kann das sein
Behoben durch die Verwendung besserer Hardware – entweder eines besseren I/O-Controllers oder einer Plattform mit
ein IOMMU.

M -- Zurück fusionieren Es existiert eine zuvor eingefügte Anfrage, die an der Grenze von where endet
Diese E/A beginnt, sodass der E/A-Planer sie zusammenführen kann.

F -- Materials des fusionieren Identisch mit der Rückzusammenführung, außer dass diese Ein-/Ausgabe an der Stelle endet, an der sie zuvor eingefügt wurde
Anfragen beginnen.

M -- Materials des or Zurück fusionieren Einer der oben genannten

M -- Materials des or Zurück fusionieren Einer der oben genannten.

G -- bekommen Anforderung Um eine beliebige Art von Anfrage an ein Blockgerät zu senden, a struct Anforderung Container
müssen zuerst zugeordnet werden.

S -- schlafen Es waren keine verfügbaren Anfragestrukturen verfügbar, daher muss der Emittent warten
einer, der befreit werden muss.

P -- Stecker Wenn E/A in eine zuvor leere Blockgerätewarteschlange eingereiht wird, verstopft Linux diese
Warteschlange in Erwartung zukünftiger iOS-Erweiterungen, bevor diese Daten benötigt werden.

U -- ziehen Einige Anforderungsdaten befinden sich bereits in der Warteschlange des Geräts. Beginnen Sie mit dem Senden von Anforderungen an das Gerät
Treiber. Dies kann automatisch geschehen, wenn ein Timeout-Zeitraum abgelaufen ist (siehe nächster Eintrag)
oder wenn mehrere Anfragen zur Warteschlange hinzugefügt wurden.

T -- ziehen zwei zu Timer Wenn niemand die E/A anfordert, die nach dem Einstecken in die Warteschlange gestellt wurde
Warteschlange wird Linux sie automatisch trennen, nachdem eine definierte Zeitspanne verstrichen ist.

X -- gespalten Bei Raid- oder Device-Mapper-Setups kann sich eine eingehende E/A über ein Gerät erstrecken oder
Innenbereich und muss für den Service in kleinere Stücke zerhackt werden. Das vielleicht
deuten auf ein Leistungsproblem aufgrund einer fehlerhaften Einrichtung dieses RAID-/DM-Geräts hin, können aber auch auftreten
einfach Teil der normalen Randbedingungen sein. dm ist besonders schlecht darin und wird klonen
jede Menge I/O.

A -- remap Bei gestapelten Geräten werden eingehende E/A-Vorgänge dem darunter liegenden Gerät im E/A-Bereich neu zugeordnet
Stapel. Die Neuzuordnungsaktion beschreibt, was genau zu was neu zugeordnet wird.

AUSGABE BESCHREIBUNG UND FORMATIERUNG


Die Ausgabe von blkparse kann auf bestimmte Verwendungszwecke zugeschnitten werden – insbesondere zur Vereinfachung
Analyse der Ausgabe und/oder Beschränkung der Ausgabefelder auf diejenigen, die der Benutzer sehen möchte. Die Daten für
Folgende Felder können ausgegeben werden:

a Aktion, eine (kleine) Zeichenfolge (1 oder 2 Zeichen) – weitere Details finden Sie in der Tabelle unten

c CPU-ID

C Befehl

d RWBS-Feld, eine (kleine) Zeichenfolge (1–3 Zeichen) – weitere Einzelheiten finden Sie im Abschnitt unten

D 7-stellige Zeichenfolge, die die Haupt- und Nebennummern des Geräts des Ereignisses enthält
(durch Komma getrennt).

e Fehlerwert

m Kleinere Anzahl von Ereignisgeräten.

M Größte Anzahl von Ereignisgeräten.

n Anzahl der Blöcke

N Anzahl der Bytes

p Prozess ID

P Paketdaten anzeigen – Reihe von Hexadezimalwerten

s Sequenznummern

S Sektornummer

t Zeitstempel (Nanosekunden)

T Zeitstempel (Sekunden)

u Verstrichener Wert in Mikrosekunden (-t Befehlszeilenoption)

U Nutzlast ohne Vorzeichen. Ganzzahl

Beachten Sie, dass der Benutzer optional die Breite der Feldanzeige und optional eine linksseitige Breite angeben kann.
ausgerichteter Spezifizierer. Diese Feldspezifizierer werden mit einem „%“-Zeichen vorangestellt, gefolgt von
optionaler Spezifizierer für die Linksausrichtung (-), gefolgt von der Breite (einer Dezimalzahl) und dann
das Feld.

So geben Sie den Befehl in einem linksbündigen Feld mit 12 Zeichen an:

-f „%-12C“

AKTION IDENTIFIKATIONEN


Die folgende Tabelle zeigt die verschiedenen Aktionen, die ausgegeben werden können:

Ein IO wurde einem anderen Gerät neu zugeordnet

B IO prallte ab

C IO-Abschluss

D IO wird an den Fahrer ausgegeben

F IO-Front mit Anforderung in der Warteschlange zusammengeführt

G Anfrage abrufen

Ich habe E/A in die Anforderungswarteschlange eingefügt

M IO wurde wieder mit der Anfrage in der Warteschlange zusammengeführt

P Steckeranfrage

Q IO wird vom Anforderungswarteschlangencode verarbeitet

S Schlafwunsch

T Wegen Zeitüberschreitung den Netzstecker ziehen

U Aufforderung zum Ausstecken

X-Split

RWBS BESCHREIBUNG


Dies ist eine kleine Zeichenfolge, die mindestens ein Zeichen enthält („R“ für Lesen, „W“ für Schreiben oder
„D“ für Block-Discard-Operation) und optional entweder ein „B“ (für Barrier-Operationen) oder
'S' (für synchrone Operationen).

DEFAULT AUSGABE


Die Standardkopfzeile (oder die angezeigten Anfangsfelder) umfassen Folgendes:

„%D %2c %8s %5T.%9t %5p %2a %3d“

Aufschlüsselung:

%D Zeigt das Haupt-/Nebengerät des Ereignisses als %3d,%-3d an.

%2c CPU-ID (2-stelliges Feld).

%8s Sequenznummer

%5T.%9t
5-stelliges Feld für den Sekundenteil des Zeitstempels und ein 9-stelliges Feld
für die Nanosekunden im Zeitstempel.

%5p 5-stelliges Feld für die Prozess-ID.

%2 A 2-stelliges Feld für eine der Aktionen.

%3d 3-stelliges Feld für die RWBS-Daten.

Sehen Sie dies in Aktion:

8,0 3 1 0.000000000 697 GW 223490 + 8 [kjournald]

Der Header sind die Daten in dieser Zeile bis 223490 (Startblock). Der Standard
Die Ausgabe für alle Ereignistypen enthält diesen Header.

DEFAULT AUSGABE PER AKTION


C -- abschließen
Wenn eine Nutzlast vorhanden ist, wird diese in Klammern nach dem Header angezeigt.
gefolgt vom Fehlerwert.

Wenn keine Nutzlast vorhanden ist, werden der Sektor und die Anzahl der Blöcke angezeigt (mit einem
dazwischen liegendes Pluszeichen (+). Wenn die -t Option angegeben wurde, dann die verstrichene Zeit
wird vorgestellt. In beiden Fällen folgt der Fehlerwert für den Abschluss.

B -- prallte ab
D -- ausgegeben
I -- eingefügt
Q -- In Warteschlange
Wenn eine Nutzlast vorhanden ist, wird die Anzahl der Nutzlastbytes ausgegeben, gefolgt von der
Nutzlast in hexadezimaler Form in Klammern.

Wenn keine Nutzlast vorhanden ist, werden der Sektor und die Anzahl der Blöcke angezeigt (mit einem
dazwischen liegendes Pluszeichen (+). Wenn die -t Option angegeben wurde, dann die verstrichene Zeit
wird dargestellt (in Klammern). In beiden Fällen folgt darauf der Befehl
mit dem Ereignis verknüpft (umgeben von eckigen Klammern).

F -- Materials des fusionieren
G -- bekommen Anforderung
M -- Zurück fusionieren
S -- schlafen
Der Startsektor und die Anzahl der Blöcke werden ausgegeben (mit dazwischenliegendem Pluszeichen (+)
Zeichen), gefolgt von dem mit dem Ereignis verknüpften Befehl (umrahmt von einem Quadrat).
Klammern).

P -- Stecker
Der zum Ereignis gehörige Befehl (umgeben von eckigen Klammern) wird ausgegeben.

U -- ziehen
T -- ziehen zwei zu Timer
Der zum Ereignis gehörige Befehl (in eckigen Klammern eingeschlossen) wird ausgegeben,
gefolgt von der Anzahl der ausstehenden Anfragen.

X -- gespalten
Der ursprüngliche Startsektor, gefolgt vom neuen Sektor (getrennt durch einen Schrägstrich (/) ist
Ausgabe, gefolgt von dem mit dem Ereignis verknüpften Befehl (umrahmt von einem Quadrat).
Klammern).

A -- remap
Sektor und Länge werden zusammen mit dem Originalgerät und dem Sektoroffset ausgegeben.

Beispiele:


Um die E/A auf dem Gerät zu verfolgen /dev/hda und parsen Möglichkeiten für das Ausgangssignal: zu human lesbar bilden, -
Folgende Befehl:

% blktspur -d / Dev / sda -o - | blkparse -i -

(sehen blktspur (8) für weitere Informationen). Das gleiche Verhalten kann mit erreicht werden
Komfortskript btrace. Der Befehl

% btrace /dev/sda

hat genau den gleichen Effekt wie der vorherige Befehl. Sehen btrace (8) für weitere Informationen.

Um die E/A auf einem Gerät zu verfolgen und die Ausgabe für die spätere Verarbeitung zu speichern blkparse, benutzen Sie
blktspur so was:

% blktrace /dev/sda /dev/sdb

Dadurch werden E/A-Vorgänge auf den Geräten verfolgt / Dev / sda und / dev / sdb und speichern Sie die aufgezeichneten Informationen
in den Akten sda und sdb im aktuellen Verzeichnis, für die beiden verschiedenen Geräte,
bzw. Diese Trace-Informationen können später von analysiert werden blkparse Nützlichkeit:

% blkparse sda ​​sdb

Dadurch werden die zuvor aufgezeichneten Rückverfolgungsinformationen in für Menschen lesbarer Form ausgegeben
stdout.

AUTOREN


blkparse wurde von Jens Axboe, Alan D. Brunelle und Nathan Scott geschrieben. Diese Manpage war
erstellt aus dem blktspur Dokumentation von Bas Zoetekouw.

REPORTING Fehler


Fehler melden an[E-Mail geschützt] >

COPYRIGHT


Copyright © 2006 Jens Axboe, Alan D. Brunelle und Nathan Scott.
Dies ist kostenlose Software. Sie dürfen Kopien davon unter den Bedingungen der GNU . weitergeben
Allgemeine öffentliche Lizenzhttp://www.gnu.org/licenses/gpl.html>. Es gibt KEINE GARANTIE, um
soweit gesetzlich zulässig.
Diese Handbuchseite wurde von Bas Zoetekouw für Debian erstellt. Es wurde abgeleitet von der
von den Autoren zur Verfügung gestellte Dokumentation und darf unter
die Bedingungen der GNU General Public License, Version 2.
Auf Debian-Systemen finden Sie den Text der GNU General Public License in
/usr/share/common-licenses/GPL-2.

Verwenden Sie blkparse online über die Dienste von onworks.net


Kostenlose Server & Workstations

Laden Sie Windows- und Linux-Apps herunter

Linux-Befehle

Ad