Halaman ini menjelaskan penggunaan pelacakan panggilan sistem untuk mendiagnosis batasan sandbox
container, dan mengasumsikan bahwa Anda telah memahami pelacakan panggilan sistem,
menggunakan alat seperti strace
atau
dtruss
. Jika Anda belum memahami pelacakan panggilan sistem, sebaiknya Anda melanjutkan
hanya setelah menghubungi dukungan Google Cloud dengan memberikan detail masalah
dan telah diundang untuk melacak panggilan sistem oleh tim dukungan Google Cloud.
Sandbox container tidak mendukung semua panggilan sistem yang didukung di Linux. Anda dapat menggunakan alat pelacakan panggilan sistem seperti strace
(Linux) atau dtruss
(macOS) untuk memeriksa syscall yang dibuat oleh aplikasi Anda, untuk
membantu menentukan syscall yang tidak didukung oleh sandbox.
Menggunakan strace
(Linux)
Jika Anda menjalankan kode Anda di Linux, instal dan aktifkan strace
:
sudo apt-get install strace
Jalankan aplikasi Anda dengan strace dengan mengawali pemanggilan Anda seperti biasa menggunakan
strace -f
, yang mana -f
bertujuan untuk melacak semua thread turunan. Misalnya, jika biasanya Anda memanggil aplikasi Anda dengan ./main
, Anda dapat menjalankannya menggunakan strace dengan memanggil /usr/bin/strace -f ./main
.
Melihat log yang ditampilkan oleh strace
Log sistem dari strace terlihat seperti ini:
Menggunakan dtruss
(macOS)
Jika Anda menjalankan kode Anda di macOS, gunakan dtrusss
dengan mengawali pemanggilan Anda
biasanya menggunakan dtruss -a
dari command line, misalnya:
sudo dtruss -a ./main
Untuk dokumentasi, gunakan perintah man dtruss
, atau kunjungi salah satu situs dtrace/drusss
.