Canonical giới thiệu Tiện ích etrace, một Công cụ lập hồ sơ ứng dụng đa năng

Canonical

Canonical đã giới thiệu etrace, một tiện ích được thiết kế để theo dõi hoạt động trong quá trình thực thi ứng dụng. Chương trình tương tự như các tiện ích strace và ltrace và cũng sử dụng ptrace trong thời gian chạy.

Mục tiêu hiệu trưởng etrace đang gỡ lỗi và phân tích các ứng dụng đã bắt đầu from snap Tiện ích cho phép bạn nhanh chóng đánh giá chương trình và tệp nào được sử dụng khi chạy một gói snap.

Hai lệnh được cung cấp, "thi hành" và "tệp", để biết thông tin về cách truy cập tệp và chạy các quy trình khác. Trong trường hợp đầu tiên, công việc của các lệnh gọi hệ thống liên quan đến tệp được giám sát và trong trường hợp thứ hai, họ lệnh gọi hệ thống điều hành bị chặn.

Etrace là một ứng dụng theo dõi chung, hữu ích cho ba mục đích đo lường và gỡ lỗi rộng rãi:

  • Mất bao lâu để ứng dụng hiển thị một cửa sổ (đồ họa / giao diện người dùng) trên màn hình.
  • Trình tự các tác vụ do chương trình chính tạo và thực hiện trong thời gian thực thi của nó. Danh sách các tệp được truy cập trong quá trình thực thi chương trình.

Các chỉ số này có thể được sử dụng để gỡ lỗi các vấn đề tiềm ẩn trong tích tắc và hiểu gói nào đang cố gắng khắc phục hoặc tìm ra điểm nghẽn hiệu suất ngay lập tức.

Tất nhiên, cũng hoạt động với các gói linux gốc hoặc bất kỳ chương trình thực thi nào, mặc dù với chức năng hiện có bị giảm nhẹ (ví dụ: nó không cài đặt lại gói gốc), nhưng bạn vẫn có thể thu thập thông tin ứng dụng và đo thời gian hiển thị một cửa sổ.

Tiện ích này cũng có thể được sử dụng để xác định tắc nghẽn hiệu suất trong các ứng dụng đồ họa dựa trên X11 và cho biết thời gian khởi tạo ứng dụng trước khi bắt đầu hiển thị cửa sổ.

Ngoài ra, các tùy chọn snap cụ thể "–reinstall-snap" và "–clean-snap-user-data" có sẵn, cho phép bạn cài đặt lại gói snap để thực hiện phép đo không có bộ nhớ cache hoặc xóa dữ liệu người dùng được liên kết với gói trước đó đang chạy nó.

Sử dụng cơ bản

Etrace có sẵn dưới dạng gói snap, vì vậy chúng tôi phải cài đặt nó trước. Bởi vì etrace được sử dụng để chạy các chương trình tùy ý, bao gồm các gói snap khác và thậm chí cả các gói linux truyền thống, nó yêu cầu quyền trên toàn hệ thống thông qua khóa cổ điển, có thể được chấp nhận bằng cách sử dụng cờ –classic khi thực hiện lệnh sau.

Để cài đặt etrace:

snap install etrace --candidate --classic

Trường hợp sử dụng etrace đầu tiên là đo thời gian một ứng dụng đồ họa hiển thị một cửa sổ trên màn hình.

Hãy bắt đầu với một plugin đơn giản, gnome-Calculator và quay vòng 10 lần để xem quá trình thực thi này mất bao lâu. Lưu ý rằng bạn cần cài đặt gnome-Calculator - cài đặt gnome-Calculator. Ở đây chúng tôi sử dụng tùy chọn –no-trace bởi vì chúng tôi không muốn toàn bộ theo dõi, chúng tôi chỉ muốn etrace đo thời gian khởi động; chúng ta sẽ đi vào các khả năng theo dõi đầy đủ sau này.

etrace --repeat = 10 exec --use-snap-run --no-trace gnome-calculator --cmd-stderr = /dev/null
Total startup time: 1.531152957s
Total startup time: 513.948576ms
Total startup time: 512.980061ms
Total startup time: 515.576753ms
Total startup time: 508.354472ms
Total startup time: 515.734329ms
Total startup time: 508.414271ms
Total startup time: 514.258788ms
Total startup time: 508.407346ms
Total startup time: 511.950964ms

Bên cạnh đó, Canonical đã thông báo về việc triển khai hỗ trợ nhanh cho thuật toán nén LZO. Thuật toán LZO tập trung vào việc đạt được tốc độ giải nén tối đa, với chi phí tăng kích thước của tệp kết quả. Khi thử nghiệm một gói với Chromium, việc sử dụng LZO thay vì thuật toán XZ mặc định cho phép bạn tăng tốc độ phát hành gói snap 2-3 lần bằng cách giảm thời gian cần thiết để giải nén hình ảnh SquashFS.

Đặc biệt, lần khởi chạy Chromium đầu tiên được cài đặt từ gói gỡ lỗi thông thường mất khoảng 1,7 giây.

Lần phát hành đầu tiên từ snap khi sử dụng XZ mất 8.1 giây và khi sử dụng LZO - 3.1 giây. Khi khởi động lại, với dữ liệu được lưu trong bộ nhớ cache, thời gian khởi động là 0,6, 0,7 và 0,6 giây. tương ứng.

Kích thước gói snap đã tăng từ 150MB lên 250MB với LZO.


Để lại bình luận của bạn

địa chỉ email của bạn sẽ không được công bố. Các trường bắt buộc được đánh dấu bằng *

*

*

  1. Chịu trách nhiệm về dữ liệu: Miguel Ángel Gatón
  2. Mục đích của dữ liệu: Kiểm soát SPAM, quản lý bình luận.
  3. Hợp pháp: Sự đồng ý của bạn
  4. Truyền thông dữ liệu: Dữ liệu sẽ không được thông báo cho các bên thứ ba trừ khi có nghĩa vụ pháp lý.
  5. Lưu trữ dữ liệu: Cơ sở dữ liệu do Occentus Networks (EU) lưu trữ
  6. Quyền: Bất cứ lúc nào bạn có thể giới hạn, khôi phục và xóa thông tin của mình.