[Tips] Cách sử dụng...
 
Notifications
Clear all

[Tips] Cách sử dụng tập tin nhật ký (log file) để phân tích các tình huống hiệu năng vận hành của SAP Business One

1 Posts
1 Users
0 Likes
436 Views
admin
Posts: 338
Admin
Topic starter
(@admin)
Prominent Member
Joined: 3 years ago

Môi trường hệ thống phức tạp đôi khi có thể dẫn đến hiệu năng kém hơn mức tối ưu. Một trợ giúp tuyệt vời trong việc tìm kiếm những gì có thể gây ra điều này có thể là các tập tin nhật ký (log file).

Sau đây là cách thiết lập ghi nhật ký chi tiết trong phần mềm SAP Business One và cách thu thập các tệp nhật ký cần thiết để khắc phục sự cố.

Thiết lập log file

Để nắm bắt thêm thông tin có giá trị, chẳng hạn như các truy vấn SQL đã thực thi, bạn cần thiết lập cách lưu lại nhật ký chi tiết trong Help → Support Desk → Logger Settings:

Để lưu cài đặt tập tin nhật ký mới, vui lòng khởi động Ứng dụng khách SAP Business One với tư cách Quản trị viên. Điều này cho phép ghi quyền truy cập vào tệp cấu hình b1LogConfig.xml nằm trong thư mục cài đặt của máy khách SAP Business One (đường dẫn mặc định: C:\Program Files\SAP\SAP Business One\Conf).

Thu thập các log file

Nằm trong thư mục C:\ProgramData\SAP\SAP Business One\Log\SAP Business One\[WINDOWS USERNAME]\BusinessOne.

Các tập tin cần để phân tích bắt đầu với Client.b1logger hoặc DiApi.b1logger (ví dụ: Client.b1logger.20221017_140603.pid2528.log.csv).

Tên tập tin cũng có chứa thông tin thời gian tạo theo định dạng YYYYMMDD_HHMISS và mã định danh xử lý PID (process identifier) của chương trình thực thi SAP Business One. Bạn có thể xác minh PID trong cửa sổ Task Manager hoặc trực tiếp trong máy khách (client) SAP Business One thông tin Help → About SAP Business One.

Lưu ý rằng có thể có nhiều tập tin nhật ký được tạo ra bởi giới hạn 5MB/file, khi log file đạt ngưỡng trên thì log file mới sẽ được tạo.

Đối với một vài tình huống, bạn nên xem xét việc tăng tham số kích thước tối đa của thư mục nhật ký để ngăn việc xóa tệp nhật ký tự động.

Sau khi bạn đã hoàn tất kịch bản vận hành, đóng ứng dụng khách SAP Business One của mình và thu thập các nhật ký cần thiết. Chúng tôi khuyên bạn nên tắt ghi nhật ký chi tiết vì nó có thể ảnh hưởng đến hiệu năng của hệ thống.

Bạn có thể sử dụng nút Restore Default Settings để khôi phục lại thiết lập gốc.

Sau đây là 2 tình huống thường gặp

Để phân tích log file, chúng tôi sử dụng Notepad++, tuy nhiên, bạn có thể sử dụng các phần mềm tương tự.

Ví dụ 1 – Đăng nhập chậm vì có quá nhiều tin nhắn cảnh báo

Bước đầu tiên xác định các log file.

  • Xác định chuỗi sự kiện của người dùng (User Logging Event): User logged in [B1 username].
  • Tiếp theo, tìm đến phần bộ đếm liên quan đến performance (Component column = Perf“LOG_BtnProc::LOG_InProc” hoặc trong một vài tình huống “CMP_OKProc::CMP_InProc”

Nhật ký cho biết người dùng mất 30 giây để đăng nhập vào hệ thống trong ví dụ minh họa sau:

  • Cuộn lên tới trước sự kiện đăng nhập.
  • Xác định phần bộ đếm hiệu năng có thời lượng cao đáng ngờ và khoảng thời gian chênh lệch dài giữa các mốc trong log file.

Trong ví dụ này bạn có thể thấy thời gian hiển thị cửa sổ Messages/Alerts Overview (ALPDrawForm) mất khoảng 26 giây:

  • Cuộn thêm lên trên và để ý hai khoảng thời gian khác nhau giữa các mốc thời gian bên dưới (12 & 7 giây).
  • Cả hai sự chậm trễ đều xảy ra sau khi ứng dụng SAP Business One nạp hơn 16000 dòng từ bảng OAOB (Message Sent)OAIB (Received Alerts).

 

  • Chúng ta có thể thấy rằng nguyên nhân gốc rễ của việc đăng nhập chậm là do một số lượng lớn các thông báo cảnh báo.
  • Để khắc phục điều này, chúng tôi khuyên người dùng nên thực hiện dọn dẹp hộp thư đến cảnh báo của họ để cải thiện quá trình đăng nhập.

Ví dụ 2 – Hiệu năng chậm khi thêm (add) Sales Order do ảnh hưởng từ đoạn mã tùy chỉnh trong thủ tục SBO_SP_TransactionNotification

Khi tiến hành khắc phục sự cố về hiệu năng, chúng tôi khuyên bạn nên lưu ý thời điểm hoạt động bắt đầu và kết thúc để xác định các phần có liên quan trong tập tin nhật ký.

Đối với trường hợp cụ thể này, chúng tôi sẽ tìm kiếm các hoạt động cuối cùng được thực hiện bởi người dùng trên cửa sổ Sales Order và lần theo các sự kiện khi giao dịch được thêm vào hệ thống

  • Sau khi xác định các mục này trong nhật ký, hãy cuộn xuống và tìm bộ đếm hiệu năng có thời lượng cao đáng ngờ và chênh lệch thời gian dài giữa các mốc thời gian trong nhật ký.
  • Trong ảnh chụp màn hình bên dưới, chúng ta có thể thấy độ trễ 10 giây do thực thi thủ tục SBO_SP_TransactionNotification.

  • Để giải quyết vấn đề, vui lòng tối ưu hóa đoạn mã tùy chỉnh được tìm thấy trong thủ tục được lưu trữ SBO_SP_TransactionNotification.

 

Nguồn: blogs.sap.com

Reply
Share:
x  Powerful Protection for WordPress, from Shield Security
This Site Is Protected By
Shield Security