Theo dõi phân tán với AWS X-Ray và logging có cấu trúc
Triển khai Ứng dụng trên AWS
Dunieski Otano
Amazon Web Services Solutions Architect
Yêu cầu chậm mà không ai tìm ra
Một yêu cầu mất bốn giây
Log của từng dịch vụ riêng lẻ đều ổn
Không ai thấy được toàn bộ đường đi
Distributed tracing giải quyết gì
Một yêu cầu đi qua
nhiều dịch vụ
Chỉ log thì không thấy
đường đi đầu-cuối
Một
trace
sẽ nối cả yêu cầu lại
Thấy chính xác thời gian trôi ở đâu
Segment, subsegment và service map
Segment
: phần việc do một dịch vụ thực hiện
Subsegment
: đơn vị bên trong segment, như một lệnh gọi DB
Service map
: đồ thị trực quan của tất cả segment
Độ trễ và lỗi hiển thị trên từng nút
Annotations và metadata
Annotations
Cặp khóa-giá trị được lập chỉ mục, nên
lọc
được
Dùng cho thứ bạn sẽ tìm, như hạng khách hàng
Metadata
Thông tin bổ sung,
không được lập chỉ mục
Gắn để có ngữ cảnh, nhưng không thể tìm theo nó
Liên kết log bằng trace ID
Mỗi trace có
trace ID
duy nhất
Thêm trace ID vào
structured logs
của bạn
Nhảy từ một trace chậm sang đúng dòng log của nó
Log và trace thành một cuộc điều tra thống nhất
Đọc service map để tìm nút nghẽn
Bắt đầu từ
service map
, không phải log
Tìm nút có
độ trễ
cao nhất
Đi sâu vào
trace timeline
của nó
Segment dài nhất là nghi phạm
Truy vết suốt toàn bộ yêu cầu
API Gateway, Lambda và các lệnh gọi hạ nguồn đều được
trace
Mỗi thành phần thêm
segment
của mình vào cùng trace
Một trace ID liên kết log và segment lại với nhau
Nhìn xuyên suốt đầu-cuối cho mọi yêu cầu
Cùng luyện tập nào!
Triển khai Ứng dụng trên AWS
Preparing Video For Download...