Trang này mô tả các phương pháp khắc phục sự cố đối với các lỗi phổ biến mà bạn có thể gặp phải khi sử dụng Cloud Storage Xem Google Cloud Status Dashboard để biết thông tin về các sự cố khu vực hoặc toàn cầu ảnh hưởng đến các dịch vụ của Google Cloud, chẳng hạn như Cloud Storage ## Ghi nhật ký yêu cầu thô Khi sử dụng các công cụ như gcloud hoặc thư viện máy khách Cloud Storage, nhiều của thông tin yêu cầu và phản hồi được xử lý bởi công cụ. Tuy nhiên nó là đôi khi hữu ích để xem chi tiết để hỗ trợ khắc phục sự cố. Sử dụng làm theo hướng dẫn để trả lại tiêu đề yêu cầu và phản hồi cho công cụ của bạn: Bảng điều khiển Việc xem thông tin yêu cầu và phản hồi tùy thuộc vào trình duyệt bạn đang sử dụng để truy cập bảng điều khiển Google Cloud. Đối với trình duyệt Google Chrome: Nhấp vào Chrome nút menu chính ( ) Lựa chọn Thêm công cụ Nhấp chuột Những công cụ phát triển Trong ngăn xuất hiện, bấm vào tab mạng Dòng lệnh gcloud Sử dụng cờ gỡ lỗi toàn cầu trong yêu cầu của bạn. Ví dụ: lưu trữ gcloud ls gsmy-bucket/my-object --log-http --verbosity=debug gsutil Sử dụng toàn cầu -D cờ trong yêu cầu của bạn. Ví dụ: gsutil -D ls gsmy-bucket/my-object thư viện máy khách C++ Đặt biến môi trường CLOUD_STORAGE_ENABLE_TRACING=httpđể nhận toàn bộ lưu lượng HTTP Đặt biến môi trường CLOUD_STORAGE_ENABLE_CLOG=yes để ghi nhật ký của từng RPC C# Thêm một logger thông qua ApplicationContext.RegisterLogger và đặt ghi nhật ký tùy chọn trên Trình xử lý tin nhắn HttpClient. Để biết thêm thông tin, xem mục Câu hỏi thường gặp Đi Đặt biến môi trường GODEBUG=http2debug=1. để biết thêm thông tin, hãy xem gói Go net/http Nếu bạn cũng muốn ghi lại nội dung yêu cầu, hãy sử dụng ứng dụng khách HTTP tùy chỉnh Java Tạo một tệp có tên "logging.properties"với nội dung sau: # Tệp thuộc tính cấu hình hoạt động của cơ sở ghi nhật ký JDK. # Hệ thống sẽ tìm tệp cấu hình này để được chỉ định làm thuộc tính hệ thống: # -Djava.util.logging.config.fileproject_loc:googleplus-simple-cmdline-sample}/logging.properties # Thiết lập trình xử lý bảng điều khiển (bỏ ghi chú "level"để hiển thị các thông báo chi tiết hơn) handlers = java.util.logging.ConsoleHandler java.util.logging.ConsoleHandler.level = CONFIG # Thiết lập ghi nhật ký các yêu cầu và phản hồi HTTP (không ghi chú "cấp độ"để hiển thị) com.google .api.client.http.level = CONFIG Sử dụng logging.properties với Maven mvn -Djava.util.logging.config.file=path/to/logging.properties chèn_command Để biết thêm thông tin, hãy xem Vận chuyển HTTP có thể cắm Node.js Đặt biến môi trường NODE_DEBUG=https trước khi gọi Node script PHP Cung cấp trình xử lý HTTP của riêng bạn cho khách hàng bằng cách sử dụng httpHandler và thiết lập phần mềm trung gian để ghi lại yêu cầu và phản hồi con trăn Sử dụng mô-đun đăng nhập. Ví dụ: nhập nhật ký nhập http.client logging.basicConfig(level=logging.DEBUG) http.client.HTTPConnection.debuglevel=5 hồng ngọc Ở trên cùng của bạn tập tin .rb sau yêu cầu "google/đám mây/lưu trữ", thêm những điều sau: ruby Google::Apis.logger.level = Logger::DEBUG ## Mã lỗi Sau đây là các mã trạng thái HTTP phổ biến mà bạn có thể gặp phải 301: Di chuyển vĩnh viễn **Sự cố Tôi đang thiết lập trang web tĩnh và truy cập đường dẫn thư mục trả về một đối tượng rỗng và một 301 mã phản hồi HTTP **Giải pháp Nếu trình duyệt của bạn tải xuống một đối tượng 0 byte và bạn nhận được một 301 Mã phản hồi HTTP khi truy cập một thư mục, chẳng hạn như httpwww.example.com/dir/, rất có thể nhóm của bạn chứa một đối tượng trống của tên đó. Để kiểm tra xem đây có phải là trường hợp không và khắc phục sự cố: - Trong Google Cloud console, vào Cloud Storage nhóm trang - Nhấn vào Kích hoạt nút Cloud Shell ở đầu bảng điều khiển Google Cloud - Chạy lưu trữ gcloud ls --recursive gswww.example.com/dir/. Nếu đầu ra bao gồm httpwww.example.com/dir/, bạn có một đối tượng trống ở vị trí đó - Xóa đối tượng rỗng bằng lệnh: bộ nhớ gcloud rm gswww.example.com/dir/ Bây giờ bạn có thể truy cập httpwww.example.com/dir/ và yêu cầu nó trả lại thư mục tệp index.html thay vì đối tượng trống 400: Yêu cầu sai **Sự cố Trong khi thực hiện tải lên có thể tiếp tục, tôi gặp lỗi này và thông điệp Không thể phân tích cú pháp tiêu đề Phạm vi Nội dung **Giải pháp Giá trị bạn đã sử dụng trong Tiêu đề Phạm vi Nội dung không hợp lệ. Vì thí dụ, Phạm vi nội dung: không hợp lệ và thay vào đó phải được chỉ định là Phạm vi nội dung: byteNếu bạn gặp lỗi này, bạn có thể tiếp tục lại hiện tại quá trình tải lên không còn hoạt động và bạn phải bắt đầu quá trình tải lên mới có thể tiếp tục 401: Trái phép **Yêu cầu phát hành trực tiếp tới bộ chứa công khai hoặc thông qua Cloud CDN là thất bại với một HTTP 401: Trái phép và Yêu cầu xác thực phản ứng **Giải pháp Kiểm tra để đảm bảo rằng máy khách của bạn hoặc bất kỳ proxy trung gian nào không thêm Tiêu đề ủy quyền cho các yêu cầu đối với Cloud Storage. Bất kỳ yêu cầu với một Tiêu đề ủy quyền, ngay cả khi trống, được xác thực như thể nó là một nỗ lực xác thực 403: Tài khoản bị vô hiệu hóa **Sự cố Tôi đã cố gắng tạo một nhóm nhưng gặp sự cố 403 Lỗi tài khoản bị vô hiệu hóa **Giải pháp Lỗi này cho biết bạn chưa bật thanh toán cho dự án liên kết. Để biết các bước kích hoạt thanh toán, hãy xem Bật tính năng thanh toán cho một dự án Nếu thanh toán được bật và bạn tiếp tục nhận được thông báo lỗi này, thì bạn có thể liên hệ với bộ phận hỗ trợ kèm theo ID dự án và mô tả sự cố của mình 403: Cấm **Sự cố tôi phải có quyền truy cập vào một nhóm hoặc đối tượng nhất định, nhưng khi tôi cố gắng làm như vậy, tôi nhận được một 403 - Lỗi bị cấm với thông báo là tương tự như: [email protected] không có quyền truy cập storage.objects.get vào Đối tượng Google Cloud Storage **Giải pháp Bạn đang thiếu quyền IAM cho nhóm hoặc đối tượng được yêu cầu để hoàn thành yêu cầu. Nếu bạn mong đợi để có thể thực hiện yêu cầu nhưng không được, hãy thực hiện các thao tác kiểm tra sau: Người được cấp phép được tham chiếu trong thông báo lỗi có phải là người bạn mong đợi không? Nếu thông báo lỗi đề cập đến một địa chỉ email không mong muốn hoặc "Người gọi ẩn danh"thì yêu cầu của bạn không sử dụng thông tin xác thực mà bạn dự định. Điều này có thể là do công cụ bạn đang sử dụng để thực hiện yêu cầu đã được thiết lập với thông tin xác thực từ một bí danh hoặc tổ chức khác hoặc có thể là do tài khoản dịch vụ đang thực hiện yêu cầu thay mặt bạn Quyền được tham chiếu trong thông báo lỗi mà bạn nghĩ là cần thiết phải không? Nếu không mong muốn được cấp quyền, thì có thể là do công cụ bạn đang sử dụng yêu cầu quyền truy cập bổ sung để hoàn thành yêu cầu của bạn. Ví dụ: để xóa hàng loạt đối tượng trong một nhóm, Trước tiên, gcloud phải tạo danh sách các đối tượng trong bộ chứa để xóa. Phần này của hành động xóa hàng loạt yêu cầu storage.objects.listpermission, điều này có thể gây ngạc nhiên, vì mục tiêu là xóa đối tượng, điều này thường chỉ yêu cầu lưu trữ.objects.deletepermission. Nếu đây là nguyên nhân gây ra thông báo lỗi của bạn, hãy đảm bảo rằng bạn đã được cấp các vai trò IAM có các quyền cần thiết bổ sung Bạn có được cấp vai trò IAM trên tài nguyên dự kiến ​​hoặc tài nguyên gốc không? Ví dụ: nếu bạn được cấp Vai trò Trình xem đối tượng lưu trữ cho một dự án và bạn đang cố tải xuống một đối tượng, hãy đảm bảo rằng đối tượng nằm trong một bộ chứa trong dự án; bạn có thể vô tình có Quyền đối tượng lưu trữ Viewer cho một dự án khác 403: Cấm **Sự cố Tôi đang tải xuống nội dung của mình từ storage.cloud.google.com và tôi nhận được 403: Lỗi bị cấm khi tôi sử dụng trình duyệt để điều hướng đến đối tượng sử dụng URL: httpsstorage.cloud.google.com/ BUCKET_NAME/ OBJECT_NAME **Sử dụng giải pháp storage.cloud.google.com để tải xuống các đối tượng được gọi là tải xuống trình duyệt được xác thực, sử dụng xác thực dựa trên cookie Nếu bạn đã định cấu hình nhật ký kiểm tra Truy cập dữ liệu trong Nhật ký kiểm tra đám mây để theo dõi truy cập vào các đối tượng, một trong những hạn chế của tính năng đó là tải xuống trình duyệt đã xác thực không thể được sử dụng để tải xuống một đối tượng được theo dõi, trừ khi đối tượng có thể đọc được.Cố gắng sử dụng bản tải xuống trình duyệtđã được xác thực cho các đối tượng không công khai dẫn đến phản hồi403.Hạn chếnày tồn tại để ngăn lừa đảo đối với ID Google, được sử dụng choxác thực dựa trên cookieĐể tránh sự cố này, hãy thực hiện một sau đây:- Sử dụng lệnh gọi API trực tiếp, hỗ trợ tải xuống không được xác thực, thay vì sử dụng tải xuống trình duyệt được xác thực- Tắt nhật ký kiểm tra Truy cập dữ liệu lưu trữ đám mây đang theo dõi quyền truy cập vào các đối tượng bị ảnh hưởng.Xin lưu ý rằng nhật ký kiểm tra Truy cập dữ liệu được đặt ở cấp độ dự án hoặc cao hơn và có thể được bật đồng thời ở nhiều cấp độ- Đặt các trường hợp miễn trừ để loại trừ người dùng cụ thể khỏi nhật ký kiểm tra Truy cập dữ liệu theo dõi, cho phép những người dùng đó thực hiện tải xuống trình duyệt được xác thực- Làm cho các đối tượng bị ảnh hưởng có thể đọc được bằng cách cấp quyền đọc choallUsers hoặcallAuthenticatedUsers.Nhật ký kiểm tra Truy cập dữ liệu không ghi lại quyền truy cập vào các đối tượng công khai409: Xung đột**Sự cố Tôi đã cố gắng tạo một nhóm nhưng nhận được lỗi sau:409 Xung đột.Rất tiếc, không có tên đó.Vui lòng thử một cái khác**Giải pháp Tên nhóm bạn đã cố sử dụng [ví dụ: gscats hoặc gsdogs]đã được sử dụng.Cloud Storage có một không gian tên chung nên bạn không được đặt tên nhómtrùng tên với nhóm hiện có.Chọn một tên không đượcsử dụng429: Quá nhiều yêu cầu**Sự cố Các yêu cầu của tôi đang bị từ chối với dấu429 Lỗi quá nhiều yêu cầu**Giải pháp Bạn đang đạt đến giới hạn về số lượng yêu cầuCloud Storage cho phép một tài nguyên nhất định.Xemhạn ngạch Lưu trữ đám mây để thảo luận về các giới hạn trongLưu trữ đám mây.Nếu khối lượng công việc của bạn bao gồm 1000 yêu cầu mỗigiây cho một nhóm, hãy xem Nguyên tắc phân phối quyền truy cập và tỷ lệ yêu cầu để thảo luận về các phương pháp hay nhất, bao gồm tăng dần khối lượng công việc của bạn và tránh các tên tệp liên tiếp## Chẩn đoán lỗi bảng điều khiển Google Cloud**Sự cố Khi sử dụng bảng điều khiển Google Cloud để thực hiện thao tác, tôi nhận được thông báo lỗi chung.Ví dụ: tôi thấy thông báo lỗikhi cố gắng xóa một nhóm nhưng tôi không thấy thông tin chi tiết về lý do tại sao thao táckhông thành công.**Giải pháp Sử dụng thông báo của bảng điều khiển Google Cloud để xemthông tin chi tiết về thao tác không thành công:Nhấp vào nútThông báo trong tiêu đề bảng điều khiển Google CloudTrình đơn thả xuống hiển thị các hoạt động gần đây nhất do bảng điều khiển Google Cloud thực hiệnNhấp vào mục bạn muốn tìm hiểu thêm vềMột trang mở ra và hiển thị thông tin chi tiết về hoạt độngNhấp vào từng hàng để mở rộng thông tin lỗi chi tiếtDưới đây là ví dụ về thông tin lỗi cho một thao tác xóa nhóm không thành công, điều này giải thích rằng chính sách lưu giữ nhóm đã ngăn cản việc xóa nhóm## Lỗi trang web tĩnhSau đây là các vấn đề phổ biến mà bạn có thể gặp phải khi thiết lập một bộ chứa để lưu trữ một trang web tĩnhHTTPS phục vụ**Sự cố Tôi muốn phân phát nội dung của mình qua HTTPS mà không cần sử dụng bộ cân bằng tải.**Giải pháp Bạn có thể cung cấp nội dung tĩnh thông qua HTTPS bằng cách sử dụng URI trực tiếpchẳng hạn nhưhttpsstorage.googleapis.com/my-bucket/my-object.Đối với các tùy chọn khác để phân phối nội dung của bạn thông qua miền tùy chỉnh qua SSL, bạn có thể:- Sử dụng Mạng phân phối nội dung của bên thứ ba với Bộ nhớ đám mây- Phục vụ nội dung trang web tĩnh của bạn từ Dịch vụ lưu trữ Firebase thay vì Lưu trữ đám mâyXác minh miền**Sự cố Tôi không thể xác minh miền của mình.**Giải pháp Thông thường, quy trình xác minh trong Search Consolehướng dẫn bạn tải tệp lên miền của mình, nhưng bạn có thể không có cách nào để thực hiệnđiều này mà không cần có nhóm được liên kết mà bạn chỉ có thể tạo*sau khi* bạn đã thực hiện xác minh miềnTrong trường hợp này, hãy xác minh quyền sở hữu bằng cách sử dụng**Nhà cung cấp tên miền* * xác minhphương pháp.Xem phần Xác minh quyền sở hữu để biết các bước thực hiện việc này.Việc xác minhnày có thể được thực hiện trước khi nhóm được tạoTrang không thể truy cập**Sự cố tôi nhận đượcTruy cập bị từ chối thông báo lỗi cho một trang web do trang webcủa tôi cung cấp**Giải pháp Kiểm tra xem đối tượng có được chia sẻ không.Nếu không, hãy xemCông khai dữ liệu để được hướng dẫn cách thực hiện việc nàyNếu trước đây bạn đã tải lên và chia sẻ một đối tượng, nhưng sau đó tải lên một đối tượng mới phiên bản của nó, thì bạn phải chia sẻ lại đối tượng.Điều này là do quyền công khai được thay thế bằng quyền tải lên mớiCập nhật quyền không thành công**Sự cố Tôi gặp lỗi khi cố gắng công khai dữ liệu của mình .**Giải pháp Đảm bảo rằng bạn có quyềnsetIamPolicy cho đối tượng hoặc nhómcủa mình.Quyền này được cấp, chẳng hạn như trong vai tròQuản trị viên lưu trữ.Nếu bạn có quyềnsetIamPolicy và bạnvẫn gặp lỗi, bộ chứa của bạn có thể bịngăn chặn truy cập công khai, không cho phép truy cập vàotất cả Người dùng hoặctất cả Người dùng được xác thực.Ngăn chặn truy cập công khai có thể được đặt trực tiếp trên bộ chứahoặc có thể được thực thi thông qua chính sách của tổ chức đượcđặt ở cấp cao hơnTải xuống nội dung**Sự cố Tôi được nhắc tải xuống nội dung trang của mình, thay vì có thể xem nội dung đó trong trình duyệt của mình.**Giải pháp Nếu bạn chỉ địnhMainPageSuffix làm đối tượng không cóloại nội dung web, thì thay vì phục vụ trang, khách truy cập trang web được nhắc tải xuống nội dung .Để giải quyết vấn đề này, hãy cập nhật mục nhập siêu dữ liệu kiểu nội dungthành một giá trị phù hợp, chẳng hạn nhưvăn bản/html.Xem Chỉnh sửa siêu dữ liệu đối tượng để được hướng dẫn cách thực hiện việc này ## Độ trễ Sau đây là các vấn đề về độ trễ phổ biến mà bạn có thể gặp phải. Ngoài ra, Google Cloud Status Dashboard cung cấp thông tin về các sự cố khu vực hoặc toàn cầu ảnh hưởng đến các dịch vụ của Google Cloud, chẳng hạn như Cloud Storage Độ trễ tải lên hoặc tải xuống **Sự cố Tôi thấy độ trễ tăng lên khi tải lên hoặc tải xuống. **Giải pháp Sử dụng lệnh gsutil perfdiag để chạy hiệu suất chẩn đoán từ môi trường bị ảnh hưởng. Xem xét các nguyên nhân phổ biến sau độ trễ tải lên và tải xuống: Hạn chế về CPU hoặc bộ nhớ: Hệ điều hành của môi trường bị ảnh hưởng phải có công cụ để đo lường mức tiêu thụ tài nguyên cục bộ, chẳng hạn như mức sử dụng CPU và mức sử dụng bộ nhớ Ràng buộc IO đĩa: Là một phần của gsutil perfdiagcommand, sử dụng rthru_fileand wthru_filetests để đánh giá tác động hiệu suất do đĩa cục bộ IO gây ra Khoảng cách địa lý: Hiệu suất có thể bị ảnh hưởng bởi sự tách biệt vật lý của bộ chứa Cloud Storage và môi trường bị ảnh hưởng, đặc biệt là trong các trường hợp xuyên lục địa. Thử nghiệm với một bộ chứa ở cùng khu vực với môi trường bị ảnh hưởng của bạn có thể xác định mức độ phân tách địa lý đang góp phần vào độ trễ của bạn - Nếu có thể, trình phân giải DNS của môi trường bị ảnh hưởng phải sử dụng giao thức EDNS(0) để các yêu cầu từ môi trường được định tuyến thông qua Giao diện người dùng Google thích hợp CLI hoặc độ trễ của thư viện máy khách **Sự cố Tôi thấy độ trễ tăng lên khi truy cập Cloud Storage với lưu trữ gcloud, gsutil hoặc một trong các thư viện máy khách **Giải pháp CLI và thư viện máy khách tự động thử lại yêu cầu khi nó hữu ích để làm như vậy và hành vi này có thể tăng hiệu quả độ trễ như đã thấy từ người dùng cuối. Sử dụng chỉ số Giám sát đám mây storage.googleapis.com/api/request_count để xem liệu Cloud Storage luôn cung cấp mã phản hồi có thể thử lại, chẳng hạn như như 429 hoặc 5xx ## Máy chủ proxy **Sự cố Tôi đang kết nối thông qua máy chủ proxy. Tôi cần phải làm gì? **Giải pháp Để truy cập Cloud Storage thông qua máy chủ proxy, bạn phải cho phép truy cập vào các miền này: account.google.comđể tạo mã thông báo xác thực OAuth2 qua cấu hình gsutil oauth2.googleapis.comđể thực hiện trao đổi mã thông báo OAuth2 *.googleapis.com cho các yêu cầu lưu trữ Nếu máy chủ proxy hoặc chính sách bảo mật của bạn không hỗ trợ danh sách cho phép theo tên miền và thay vào đó yêu cầu đưa vào danh sách trắng theo khối mạng IP, chúng tôi thực sự khuyên bạn nên định cấu hình máy chủ proxy của mình cho tất cả các dải địa chỉ IP của Google. Bạn có thể tìm phạm vi địa chỉ bằng cách truy vấn dữ liệu WHOIS tại ARIN. Cách tốt nhất là bạn nên định kỳ xem lại cài đặt proxy của mình để đảm bảo chúng khớp với địa chỉ IP của Google Chúng tôi khuyên bạn không nên định cấu hình proxy của mình bằng các địa chỉ IP riêng lẻ mà bạn có được từ tra cứu một lần của oauth2.googleapis.com và lưu trữ.googleapis.com. Bởi vì các dịch vụ của Google được hiển thị thông qua tên DNS ánh xạ tới một số lượng lớn địa chỉ IP có thể thay đổi theo thời gian, cấu hình proxy của bạn dựa trên tra cứu một lần có thể dẫn đến lỗi kết nối với Lưu trữ đám mây Nếu các yêu cầu của bạn đang được định tuyến thông qua một máy chủ proxy, bạn có thể cần phải kiểm tra với quản trị viên mạng của bạn để đảm bảo rằng ủy quyền tiêu đề chứa thông tin đăng nhập của bạn không bị proxy loại bỏ. Không có các tiêu đề ủy quyền, yêu cầu của bạn bị từ chối và bạn nhận được một Lỗi MissingSecurityHeader ## Cái gì tiếp theo - Tìm hiểu về các tùy chọn hỗ trợ của bạn - Tìm câu trả lời cho các câu hỏi khác trong Câu hỏi thường gặp về Lưu trữ đám mây - Khám phá cách Báo cáo lỗi có thể giúp bạn xác định và hiểu các lỗi Bộ nhớ đám mây của mình.