Các lượt nộp
    Danh sách bài
    Trang chủ
    Báo lỗi

    solution

    Đề bài: [Hệ điều hành Unix] Dashboard syslog: top service theo số lỗi

    Cho log ứng dụng chuẩn hoá SERVICE LEVEL message (token 1 service, token 2 level ∈ {INFO, WARN, ERROR}). Hãy in một dashboard gồm:

    1. Dòng đầu: TotalErrors: <tổng số dòng ERROR>
    2. Tiếp theo tối đa 3 dòng dạng SERVICE SỐ_LỖI cho các service có số dòng ERROR > 0, giảm dần theo số lỗi; hoà thì tăng dần theo SERVICE (LC_ALL=C).

    Nếu không có lỗi nào thì chỉ in dòng TotalErrors: 0.

    Ví dụ

    Input:

    auth ERROR x
    auth ERROR y
    db INFO z
    db ERROR w
    web INFO ok
    

    Output:

    TotalErrors: 3
    auth 2
    db 1
    
    • Định dạng đầu vào:

      Nhiều dòng SERVICE LEVEL message. Có thể rỗng.

    • Ràng buộc đầu vào:

      0 ≤ số dòng ≤ 100000.

    • Định dạng đầu ra:

      Dòng 1 TotalErrors: N. Sau đó tối đa 3 dòng SERVICE SỐ_LỖI (service có lỗi), giảm dần theo số lỗi, hoà thì tăng SERVICE.

    Ví dụ:

    Đầu vào:

    auth ERROR x
    auth ERROR y
    db INFO z
    db ERROR w
    web INFO ok
    

    Đầu ra:

    TotalErrors: 3
    auth 2
    db 1

    Giải thích:

    Tổng 3 dòng ERROR; auth 2 lỗi, db 1 lỗi (web không có lỗi). In TotalErrors rồi top service.

    Đang tải editor...