Thật không may, bạn không thể.
Lệnh logger
chỉ là giao diện người dùng cho trình ghi nhật ký hệ thống. Điều này có nghĩa là bất cứ thứ gì bạn nạp vào nó sẽ chuyển sang chế độ syslogd
, sau đó thực hiện tất cả các loại xử lý (như thêm dấu thời gian, tên máy chủ, mức độ ưu tiên, thẻ, vv) cũng như gửi đi phức tạp đến các cửa hàng khác nhau (các tệp khác nhau, ổ cắm, máy chủ khác) v.v.)
Nó thậm chí còn cấp mức cho phép cầu, vì vậy trong ví dụ của bạn, bạn vẫn có thể đăng nhập vào syslog
hoặc user.log
, chẳng hạn, mặc dù bạn không thể sửa đổi trực tiếp các tệp đó.
Nếu logger
có thể đăng nhập trực tiếp vào tập tin, nó sẽ bị câm như một cuộn đơn giản, hoặc sẽ phải thực hiện lại nhiều nhiệm vụ xử lý tin nhắn do syslog thực hiện. Dù bằng cách nào, đó sẽ là một ý tưởng tồi. Sẽ tốt hơn nếu giao diện syslog chuẩn có cách để chỉ định một tham số đầu ra đặc biệt (như tên tệp) cùng với thông báo, vì vậy người ta có thể đăng nhập vào các tệp tùy chỉnh mà không cần cấu hình lại hệ thống (người dùng thông thường) không được phép làm gì).
Nguồn
2017-01-14 14:41:06
Dấu thời gian thích hợp sẽ bị mất theo cách này, sau đó anh ấy phải thực hiện thủ công. Ngoài ra, để hỗ trợ mức độ ưu tiên và/hoặc thẻ (là các tính năng rất phổ biến của ngay cả những trình ghi nhật ký nguyên thủy nhất, ví dụ: phân biệt thành công, lỗi, cảnh báo, v.v.), anh ta cũng phải triển khai, điều đó, từ đầu. (Đã ở đó, thực hiện điều đó và sau một vài nỗ lực nửa vời, tôi cũng đã kết thúc bằng nhật ký.) –
@Sz. Những quan sát đó đều đúng. Tuy nhiên, ngoài việc tùy chỉnh cấu hình 'syslog' (hoặc' syslog-ng' hoặc 'rsyslog', bất kể phiên bản phân phối của anh ta đang sử dụng), cái mà anh ta không thể làm mà không có đặc quyền gốc, tự mình làm, có thể với sự trợ giúp của một số Python/Java/bất kỳ thư viện nào có sẵn, là cách duy nhất để đưa nhật ký vào một tệp mà bạn kiểm soát ... – twalberg
Điểm của bạn cũng chính xác. :) –