Mam kilka procesów o znanej nazwie, które wszystkie zapisują do plików w jednym katalogu. Chciałbym rejestrować liczbę odczytów i zapisów bloków dysku w danym okresie ( nie tylko dostęp do pliku), aby sprawdzić, czy zmiana parametru znacznie zmniejsza ilość operacji we / wy. Obecnie używam iostat -d -p
, ale jest to ograniczone do całej partycji.
linux
monitoring
io
disk-usage
l0b0
źródło
źródło
Odpowiedzi:
Zdaję sobie sprawę, że będzie to brzmiało zarówno uproszczone, jak i absurdalne, ale jeśli masz kontrolę nad danymi aplikacjami (być może w środowisku testowym), możesz zamontować TYLKO ten katalog na własnej partycji
iostat
, itd. Powiedziałbyś tylko o tym i nic więcej w tym miejscu.Jeśli w grę wchodzą dyski fizyczne, można je sfałszować za pomocą montażu pętli zwrotnej à la
To nie całkowicie usunęłoby wszystkie konkurencyjne dyski we / wy, ale jestem prawie pewien
iostat
, że dane wyjściowe będą bardziej dostosowane do twoich potrzeb.źródło
Nie sądzę, że istnieje bezpośredni sposób. Jednym ze sposobów uzyskania potrzebnych danych byłoby uzyskanie dostępu do drzewa katalogów za pośrednictwem wirtualnego systemu plików, który rejestruje dostęp. Loggedfs jest jednym z takich systemów plików, choć nie wiem, czy może pokazywać wszystkie dane, którymi jesteś zainteresowany. (Jeśli nie, prawdopodobnie byłby to niewielki wysiłek w zakresie kodowania tych danych).
źródło
Możesz korzystać
inotifywait -m DIRNAME
z narzędzi inotify .źródło
-d
nie istnieje w inotifywait 3.13. Czy masz na myśli-m
?-m
z wyjątkiem działania w tle i wymagającego outfile.-r
może być przydatny