Avatar
0
Huu Tuyen Nguyen Beginner
Exception khi đồng bộ dữ liệu từ Kafka
  1. Cho e hỏi khi đồng bộ dữ liệu từ kafka với vai trò là consumer cần bắt nhưng exception nào?
  2. Và ở dòng code này: @Payload(required = false) ConsumerRecords<String, String> records thì cái annotation payload required false có ý nghĩa là gì. Thanks.
  • Answer
Remain: 5
1 Answer
Avatar
monkey Beginner
monkey Beginner
  1. Anh vẫn thường bắt Exception hoặc Throwable kiểu này:

 try {
    log.debug("start proccess record: {}", record);
    processRecord(record);
    log.debug("finish proccess record: {}", record);
} catch (Exception e) {
    log.debug("proccess record: {} failed", record, e);
    if (e instance Exception khi xử lý logic) {
        // xử lý exception
    } else {
        // nếu không biết exception này là gì, nó sẽ là exception nghiêm trọng
        notifyToSlack(e); // thông báo vào kênh chat để dev xem ngay
    }
}

  1. Theo như source code @Payload này thì false có nghĩa không yêu cầu message gửi đến phải có payload (có nội dung). Có nghĩa là em có thể gửi một message rỗng không có nội dung gì và consumer vẫn sẽ chấp nhận nó. Tuy nhiên anh thấy em dùng kiểu @Payload(required = false) ConsumerRecords có vẻ không đúng lắm nhỉ? Thường thì sẽ khai báo 1 đối tượng Java làm payload em ạ.
  • 0
  • Reply