Làm cách nào để tắt hoàn toàn nhật ký khỏi XCGLogger khi ở trong môi trường sản xuất?Tắt hoàn toàn nhật ký từ XCGLogger khi đang trong quá trình sản xuất
Hiện tại tôi đang sử dụng logLevel = .None
.
Đây có phải là cách được khuyến nghị không?
Làm cách nào để tắt hoàn toàn nhật ký khỏi XCGLogger khi ở trong môi trường sản xuất?Tắt hoàn toàn nhật ký từ XCGLogger khi đang trong quá trình sản xuất
Hiện tại tôi đang sử dụng logLevel = .None
.
Đây có phải là cách được khuyến nghị không?
Đó là một cách có thể, nhưng không lý tưởng.
Trước tiên, tôi tự hỏi nếu bạn thực sự muốn tắt hoàn toàn nhật ký trong sản xuất. sử dụng các nhật ký error
và severe
có thể là công cụ chẩn đoán hữu ích cho các ứng dụng đã phát hành.
Nếu bạn muốn xóa hoàn toàn nhật ký trong sản xuất, tôi khuyên bạn nên thay đổi cách bạn thiết lập và sử dụng nhật ký so với những gì tôi có trong tài liệu chính thức.
Thay đổi đối tượng đăng nhập toàn cầu là một tùy chọn thay vì:
let log: XCGLogger? = {
#if DEBUG
let log = XCGLogger.defaultInstance()
log.setup(.Debug, showThreadName: true, showLogLevel: true, showFileNames: true, showLineNumbers: true, writeToFile: nil, fileLogLevel: .Debug)
return log
#else
return nil
#endif
}
Sau đó thay đổi đăng nhập của bạn gọi đến:
log?.debug("whatever")
Điều này sẽ loại bỏ bất kỳ chi phí của logger từ log
sẽ nil
trong sản xuất và không có cuộc gọi khai thác gỗ sẽ được thực hiện.
Btw. Làm thế nào các bản ghi lỗi và lỗi trong sản xuất có thể liên lạc lại với tôi nếu tôi không xóa hoàn toàn chúng – Kaunteya
Với phiên bản hiện tại, bạn cần nói chuyện với người dùng đang gặp sự cố và họ có thể thấy chúng trong nhật ký bảng điều khiển của họ . Hoặc bạn thêm phương thức để ứng dụng gửi email cho bạn tệp nhật ký hoặc thậm chí báo cáo nó với máy chủ từ xa. Tôi dự định bổ sung một số công cụ báo cáo từ xa vào cuối năm (nếu thời gian cho phép). –