При использовании SDK хранилища Azure на Python мне не удалось переопределить 90-секундный тайм-аут по умолчанию, чтобы перехватить исключение DNS, возникающее при вызове blob_client.upload_blob(). Я ищу способ переопределить это с помощью более короткого интервала времени (например, 5 секунд).
Следующий код иллюстрирует эту проблему с использованием вымышленного имени учетной записи, которое DNS не может разрешить. Я использую аргумент таймаута в вызове upload_blob и понимаю из анализа документации, что это устанавливает пороговое значение на стороне сервера, а не на стороне клиента. Мне не удалось обеспечить принудительное соблюдение порогового значения на стороне клиента.
Эта проблема похожа на следующий вопрос без ответа: Как обработать тайм-аут для загрузки большого двоичного объекта в хранилище Azure с помощью Python SDK ?. Одно (не принятое) решение предлагает использовать порог тайм-аута в вызове upload_blob. Как отмечалось выше (и показано в приведенном ниже коде), это не дает желаемого эффекта.
from azure.core.exceptions import AzureError
from azure.storage.blob import BlobServiceClient
# Define Azure Storage Blob connection details
connection_string = "DefaultEndpointsProtocol=https;AccountName=test;AccountKey=removed==;EndpointSuffix=core.windows.net"
container_name = "containername"
blob_name = "blobname"
local_file_path = "c:/temp/test.txt"
# Create the BlobServiceClient
blob_service_client = BlobServiceClient.from_connection_string(connection_string)
# Function to perform the blob upload
def upload_blob_process():
try:
with open(local_file_path, "rb") as data:
blob_client = blob_service_client.get_blob_client(container_name, blob_name)
blob_client.upload_blob(data, timeout=5)
print("Blob uploaded successfully!")
except AzureError as e:
print(f"Azure error occurred: {e}")
except Exception as e:
print(f"An error occurred: {e}")
upload_blob_process()
Подробнее здесь: https://stackoverflow.com/questions/792 ... pload-blob
Обработка тайм-аута DNS с помощью вызова blob_client.upload_blob ⇐ Python
Программы на Python
-
Anonymous
1732256315
Anonymous
При использовании SDK хранилища Azure на Python мне не удалось переопределить 90-секундный тайм-аут по умолчанию, чтобы перехватить исключение DNS, возникающее при вызове blob_client.upload_blob(). Я ищу способ переопределить это с помощью более короткого интервала времени (например, 5 секунд).
Следующий код иллюстрирует эту проблему с использованием вымышленного имени учетной записи, которое DNS не может разрешить. Я использую аргумент таймаута в вызове upload_blob и понимаю из анализа документации, что это устанавливает пороговое значение на стороне сервера, а не на стороне клиента. Мне не удалось обеспечить принудительное соблюдение порогового значения на стороне клиента.
Эта проблема похожа на следующий вопрос без ответа: Как обработать тайм-аут для загрузки большого двоичного объекта в хранилище Azure с помощью Python SDK ?. Одно (не принятое) решение предлагает использовать порог тайм-аута в вызове upload_blob. Как отмечалось выше (и показано в приведенном ниже коде), это не дает желаемого эффекта.
from azure.core.exceptions import AzureError
from azure.storage.blob import BlobServiceClient
# Define Azure Storage Blob connection details
connection_string = "DefaultEndpointsProtocol=https;AccountName=test;AccountKey=removed==;EndpointSuffix=core.windows.net"
container_name = "containername"
blob_name = "blobname"
local_file_path = "c:/temp/test.txt"
# Create the BlobServiceClient
blob_service_client = BlobServiceClient.from_connection_string(connection_string)
# Function to perform the blob upload
def upload_blob_process():
try:
with open(local_file_path, "rb") as data:
blob_client = blob_service_client.get_blob_client(container_name, blob_name)
blob_client.upload_blob(data, timeout=5)
print("Blob uploaded successfully!")
except AzureError as e:
print(f"Azure error occurred: {e}")
except Exception as e:
print(f"An error occurred: {e}")
upload_blob_process()
Подробнее здесь: [url]https://stackoverflow.com/questions/79204288/handle-dns-timeout-with-call-to-blob-client-upload-blob[/url]
Ответить
1 сообщение
• Страница 1 из 1
Перейти
- Кемерово-IT
- ↳ Javascript
- ↳ C#
- ↳ JAVA
- ↳ Elasticsearch aggregation
- ↳ Python
- ↳ Php
- ↳ Android
- ↳ Html
- ↳ Jquery
- ↳ C++
- ↳ IOS
- ↳ CSS
- ↳ Excel
- ↳ Linux
- ↳ Apache
- ↳ MySql
- Детский мир
- Для души
- ↳ Музыкальные инструменты даром
- ↳ Печатная продукция даром
- Внешняя красота и здоровье
- ↳ Одежда и обувь для взрослых даром
- ↳ Товары для здоровья
- ↳ Физкультура и спорт
- Техника - даром!
- ↳ Автомобилистам
- ↳ Компьютерная техника
- ↳ Плиты: газовые и электрические
- ↳ Холодильники
- ↳ Стиральные машины
- ↳ Телевизоры
- ↳ Телефоны, смартфоны, плашеты
- ↳ Швейные машинки
- ↳ Прочая электроника и техника
- ↳ Фототехника
- Ремонт и интерьер
- ↳ Стройматериалы, инструмент
- ↳ Мебель и предметы интерьера даром
- ↳ Cантехника
- Другие темы
- ↳ Разное даром
- ↳ Давай меняться!
- ↳ Отдам\возьму за копеечку
- ↳ Работа и подработка в Кемерове
- ↳ Давай с тобой поговорим...
Мобильная версия