리눅스 앱에서 D-Bus 호출이 언제 오가고 어느 메서드가 오래 걸리는지 보려면 Bustle을 사용할 수 있습니다. GNOME의 공식 앱 목록은 Bustle을 D-Bus 활동을 순서도로 그리는 도구로 소개하며, Flathub에서 무료로 설치하도록 안내합니다.
Bustle로 사용자 세션 버스의 짧은 동작을 기록한 뒤 호출 화살표와 시간을 보고, Statistics의 Durations에서 오래 걸린 메서드를 찾는 과정을 설명합니다. 공식 화면에 나온 수치와 서비스 이름은 예시 기록이므로 자신의 컴퓨터에서 측정한 값과 구분해 보세요.
Bustle은 어떤 프로그램인가요?
리눅스 데스크톱에서는 앱과 서비스가 D-Bus로 메시지를 주고받습니다. Bustle은 신호가 발생한 때와 메서드 호출·응답이 이어지는 순서를 한 화면에 놓습니다. 각 이벤트의 시각과 메서드 호출에 걸린 시간을 확인할 수 있어 앱이 멈칫할 때 어떤 통신이 반복되는지 살펴보는 데 쓰입니다.
공식 GNOME 화면의 왼쪽에는 서비스 이름과 메서드가, 오른쪽에는 시간에 따라 이어진 화살표가 보입니다. 별도 Statistics 화면에는 Frequencies, Durations, Sizes 탭이 있습니다. 호출 횟수와 소요 시간을 한쪽 화면에서만 판단하기 어려울 때 통계 탭을 함께 열어 비교할 수 있습니다.
GNOME 목록은 확인 시점의 최신 버전을 0.14.0으로 표시합니다. Flathub에는 Free와 Linux x86_64·aarch64 지원이 표시돼 있습니다. 이 글의 설치 경로는 Flathub stable 참조 파일입니다. 개발 중인 소스 빌드나 다른 배포판 패키지의 버전을 이 파일과 같은 것으로 취급하지 않습니다.
공식 화면에서 호출 순서와 통계 살펴보기
GNOME이 제공한 실제 Bustle 화면입니다. 첫 화면은 D-Bus 호출 화살표와 시각, 두 번째는 Durations 탭의 메서드별 Total·Calls·Mean 열을 보여 줍니다. 예시 기록의 값은 현재 시스템 측정 결과가 아닙니다.
| 프로그램 | Bustle |
| 개발자 | The Bustle developers |
| 공식 표시 버전 | 0.14.0 |
| 지원 운영체제 | Linux |
| 공식 앱 ID | org.freedesktop.Bustle |
| 배포 경로 | Flathub stable Flatpak |
| 주요 용도 | D-Bus 호출 흐름·시간·통계 분석 |
Linux에 Bustle 설치하고 기록할 버스 고르기
GNOME 공식 Bustle 페이지의 Get the app을 선택하면 Flathub 설치 항목을 찾을 수 있습니다. 이름이 Bustle이고 앱 ID가 org.freedesktop.Bustle인지 확인하세요. Flathub에는 Free와 Linux x86_64·aarch64 지원이 표시됩니다.
Flatpak과 Flathub가 설정된 Linux라면 소프트웨어 센터에서 Bustle을 찾아 설치할 수 있습니다. stable .flatpakref를 받아 Flatpak을 지원하는 소프트웨어 센터에서 여는 방법도 있습니다. 참조 파일에는 앱 전체가 들어 있지 않으므로 설치 중 Flathub에서 필요한 파일을 받을 인터넷 연결이 필요합니다.
Bustle의 Record 메뉴에는 Record Session Bus, Record System Bus, Record Address…가 있습니다. 데스크톱 앱의 동작을 처음 살펴볼 때는 Record Session Bus부터 시작하세요. 시스템 버스나 임의 주소는 분석 대상이 분명할 때 선택해야 기록 범위를 혼동하지 않습니다.
세 항목은 같은 기록을 다른 이름으로 저장하는 선택지가 아닙니다. Session Bus는 로그인한 사용자의 세션에서 오가는 메시지를, System Bus는 시스템 전체 버스의 메시지를 대상으로 합니다. 특정 버스 주소를 이미 알고 있을 때만 Record Address…에 그 주소를 입력하세요. 어떤 버스를 선택했는지에 따라 목록에 나타나는 서비스가 달라지므로, 확인하려는 앱의 통신 위치를 먼저 정해야 합니다.
- Flatpak·Flathub가 준비된 Linux에서 Bustle과 앱 ID를 확인해 설치합니다.
- Bustle을 열고 Record 메뉴에서 Record Session Bus를 선택합니다.
- 살펴볼 앱에서 문제가 생기는 동작을 한 번 수행합니다.
호출 화살표와 시간으로 문제 구간 좁히기
기록을 시작한 뒤 분석할 앱에서 메뉴를 열거나 검색을 실행하는 등 재현 가능한 동작을 한 번 해 보세요. 메시지가 쌓이면 Bustle의 Stop을 눌러 기록을 끝냅니다. 기록할 때 어떤 동작을 했는지 메모해 두면 화면에서 비슷한 이름의 호출을 찾기 쉽습니다.
순서도에서는 왼쪽 서비스·메서드 이름과 오른쪽 호출 화살표를 함께 읽습니다. 같은 메서드가 여러 번 나타나는지, 응답으로 돌아오는 화살표까지 얼마나 이어지는지 살펴보세요. 공식 예시 화면에는 시각이 밀리초 단위로 표시되고, 제목 아래 기록된 메시지 수가 보입니다. 이 숫자는 예시 파일의 값입니다.
메시지가 많으면 화면의 Filter Services로 관련 서비스를 좁혀 보세요. 필터를 걸어 화면이 짧아졌다고 원본 기록에서 다른 메시지가 삭제됐다고 단정하지 말고, 필터를 다시 풀어 전체 흐름과 대조하세요. 원하는 호출을 찾았으면 그 호출 전후에 어떤 서비스가 이어지는지도 확인합니다.
화살표가 한 방향으로만 보이는 행은 먼저 메시지 종류를 확인하세요. 신호와 메서드 호출은 역할이 다르며, 응답을 기다리는 호출인지 단순히 전달되는 신호인지에 따라 시간 해석도 달라집니다.
관련 행을 선택한 뒤 Details View를 열면 Message의 Type, Path, Interface, Member와 Details의 Sender, Destination, Response Time 등을 살펴볼 수 있습니다. 같은 이름의 메서드라도 경로나 보내는 서비스가 다르면 다른 호출일 수 있습니다. 메서드 이름만 같다고 묶지 말고 Path와 Sender를 함께 읽어 자신이 재현한 동작과 연결되는 행인지 확인하세요.
필터 화면에는 서비스 이름과 메시지 태그를 선택하거나 모두 선택 해제하는 동작이 있습니다. 로그가 길면 분석할 서비스 이름부터 남기고, 신호와 메서드 호출을 구분해야 할 때 태그를 조정해 보세요. 필터를 너무 좁히면 호출에 대한 응답이나 앞선 신호를 놓칠 수 있으므로, 관련 행을 찾은 다음에는 선택 범위를 넓혀 앞뒤 메시지를 다시 봅니다.
- 문제를 재현한 직후 Stop으로 기록을 마칩니다.
- 서비스·메서드 이름과 화살표를 따라 호출과 응답의 위치를 확인합니다.
- Filter Services로 관련 서비스만 본 뒤 전체 흐름과 다시 비교합니다.
Statistics에서 오래 걸린 메서드 확인하기
메인 메뉴의 Statistics를 열어 Durations 탭을 선택하세요. 공식 화면에는 Method, Total, Calls, Mean 열이 보입니다. Total은 해당 메서드에 기록된 전체 시간, Calls는 호출 수, Mean은 한 번 호출의 평균 시간을 비교할 때 유용합니다.
예를 들어 전체 시간이 큰 메서드라도 호출이 매우 많아 평균은 짧을 수 있습니다. 반대로 호출 수는 적어도 Mean이 큰 행은 한 번의 요청이 오래 걸렸을 가능성을 살펴볼 만합니다. 어느 하나의 숫자만으로 앱이 느린 원인이라고 확정하지 말고, 순서도에서 사용자가 동작한 시점과 해당 메서드의 호출 위치를 맞춰 보세요.
Frequencies에서는 많이 반복된 신호나 호출을, Sizes에서는 기록된 메시지 크기를 살펴볼 수 있습니다. 한 번의 동작을 기록한 결과와 평소 상태를 따로 비교하면 문제 구간을 더 쉽게 좁힐 수 있지만, 분석할 수 있는 범위는 기록한 버스와 그때 발생한 메시지에 한정됩니다.
Frequencies 화면에서는 Message Type과 Member, Frequency를 확인할 수 있습니다. 같은 Member가 과도하게 반복되는지 본 뒤, 순서도에서 그 메시지가 어느 서비스와 함께 나타나는지 확인하세요. Sizes 화면은 메시지마다 Smallest, Mean, Largest 크기를 비교하는 데 쓰입니다. 큰 메시지가 한 번 있었던 것인지 비슷한 크기의 메시지가 계속 쌓이는지 구분하는 데 도움이 됩니다.
Statistics의 집계는 기록한 구간에만 적용됩니다. 문제 동작을 수행하기 전부터 오래 기록하면 평소 데스크톱 활동이 섞여 원인을 찾기 어려워집니다. 먼저 짧은 기록으로 의심 구간을 좁히고, 같은 동작을 다시 수행한 별도의 기록에서도 비슷한 메서드와 시각이 나타나는지 비교하세요. 반복해서 나타난다 해도 Bustle은 통신을 보여 주는 도구이므로 앱 내부 처리의 원인까지 자동으로 판정하지는 않습니다.
- Statistics를 열고 Durations에서 Total·Calls·Mean을 비교합니다.
- 눈에 띄는 메서드를 순서도의 시각·서비스 이름과 다시 대조합니다.
- 필요하면 Frequencies와 Sizes도 확인해 반복과 크기를 살펴봅니다.
기록이 비어 있거나 설치가 멈출 때
Bustle이 Waiting for D-Bus Traffic…이라고 표시한다면 선택한 버스에서 아직 메시지가 나타나지 않았을 수 있습니다. Record Session Bus를 선택했는지 확인하고, 실제로 분석할 앱에서 동작을 다시 한 번 실행하세요. 시스템 버스를 기록할 때는 권한이나 배포 환경에 따라 보이는 메시지가 달라질 수 있습니다.
같은 이름의 앱이 보이지 않거나 .flatpakref가 열리지 않는다면 Linux의 Flatpak·Flathub 설정을 확인하세요. 소프트웨어 센터에서 org.freedesktop.Bustle 앱 ID를 검색하면 이름이 비슷한 다른 패키지와 구분하기 쉽습니다. 설치가 중단됐다면 연결 상태와 남은 저장 공간을 확인한 다음 다시 진행합니다.
기록을 다른 사람과 공유하려면 메인 메뉴의 Save As…에서 PCAP 또는 DOT Graph 형식을 고를 수 있습니다. D-Bus 기록에는 서비스 이름과 호출 내용이 들어갈 수 있으므로 파일을 내보내기 전에 분석에 필요하지 않은 내용이 담겼는지 살펴보세요. 저장 형식은 분석 목적에 맞춰 고르면 됩니다.
다음 날 같은 기록을 다시 보려면 Save As…에서 PCAP으로 저장한 뒤 메인 메뉴의 Open으로 로그를 열 수 있습니다. DOT Graph는 그래프 형식으로 내보낼 때 선택합니다. 두 형식을 같은 로그 파일이라고 생각해 확장자만 바꾸지 마세요. 기록이 비어 있다면 먼저 올바른 버스를 골랐는지와 Stop 전에 실제 동작이 발생했는지를 확인한 후 새 기록을 만드는 편이 빠릅니다.
자주 묻는 질문
Bustle은 무료인가요?
네. Flathub의 Bustle 항목에 Free로 표시됩니다.
어떤 Linux에서 설치할 수 있나요?
확인한 Flathub 배포는 x86_64와 aarch64를 지원합니다. Flatpak·Flathub 설정이 필요합니다.
D-Bus 호출을 처음 기록할 때 어느 메뉴를 고르나요?
데스크톱 앱 동작을 보려면 Record 메뉴의 Record Session Bus부터 시작하세요. System Bus와 Address는 분석 대상이 그쪽일 때 고릅니다.
느린 메서드는 어디서 찾나요?
메인 메뉴의 Statistics에서 Durations를 열어 Total, Calls, Mean을 비교하고, 해당 메서드를 순서도에서 다시 확인하세요.
기록을 파일로 저장할 수 있나요?
네. Save As… 메뉴에는 PCAP과 DOT Graph 형식이 있습니다. 공유 전에는 기록에 담긴 호출 내용을 확인하세요.
짧게 기록하고 호출 시점부터 비교하세요
Bustle은 Linux에서 D-Bus 메시지의 순서와 메서드 호출 시간을 살펴보는 무료 앱입니다. Flathub에서 공식 앱 ID를 확인해 설치하고, Record Session Bus로 분석할 동작을 짧게 기록해 보세요.
Stop으로 기록을 마친 뒤 순서도의 화살표와 Statistics의 Durations를 함께 보면 어떤 서비스·메서드를 더 조사할지 좁힐 수 있습니다. 숫자만 보고 원인을 확정하기보다 사용자가 동작한 시점과 호출 위치를 맞춰 보는 것이 다음 단계입니다.
공식 자료와 확인일
Bustle 공식 GNOME 앱 설명·화면·버전 · Bustle Flathub 무료 배포·지원 아키텍처 · Bustle 공식 소스와 메뉴 정의 · Flatpak 공식 배포판별 설정 | 2026-10-29T23:51:00.675216+00:00

