Каков наилучший способ выяснить, какой процесс ОС Linux завис?
Администратор базы данных Oracle здесь! Никакого опыта в устранении неполадок производительности Linux...
Мне нужно определить узкое место в базе данных Oracle, работающей под управлением Oracle Linux. Та же процедура отлично работает на других виртуальных машинах, поэтому проблема специфична для конкретной виртуальной машины (другой хостинг).
Судя по тому, что я получил от инструментов диагностики Oracle, мой процесс зависает на несколько секунд, по-видимому, не делая ничего, связанного с миром SQL: я вижу событие, указывающее «ожидание процессора» в работающем сеансе, и трассировка Oracle показывает длительный разрыв во времени от очистки некоторых материализованных просмотреть журналы и следующий запрос, поэтому мне нужно выяснить, что происходит в течение этого периода времени, когда трассировка Oracle не дает подробностей о текущей активности БД.
Что вы можете предложить сделать для отслеживания заданного PID с помощью предустановленных инструментов производительности Linux? Я пытаюсь понять, как использоватьperf
, но это довольно сложно.