Функции приложений Azure, триггер очереди хранилищаPython

Программы на Python
Ответить Пред. темаСлед. тема
Anonymous
 Функции приложений Azure, триггер очереди хранилища

Сообщение Anonymous »

Я новичок в использовании функций приложений Azure и изучаю возможность использования хранилища очередей с моей функцией. моя среда выполнения — Python. я развертываю свою функцию через Vscode. Я столкнулся с проблемой: когда я добавляю свою конфигурацию, такую ​​как мои evns и конечные точки, на глобальном уровне и развертываю свою функцию, моя функция больше не доступна. вот мой код,

Код: Выделить всё

import os
import requests
import logging
from datetime import datetime
from azure.storage.blob.aio import BlobServiceClient
import azure.functions as func
import asyncio
import json
import aiohttp
from isodate import parse_duration
import numpy as np
from ruptures.detection import Pelt
import librosa
import tempfile
import time

# --- Azure Function Configuration ---
# Replace with your actual values
STORAGE_CONNECTION_STRING = os.environ["AzureWebJobsStorage"]  # Use single connection string if same
SOURCE_CONTAINER_NAME = os.environ["STORAGE_CONNECTION_STRING"]
DESTINATION_CONTAINER_NAME = os.environ["DESTINATION_CONTAINER_NAME"]
SPEECH_API_KEY = os.environ["SPEECH_API_KEY"]
YOUR_SAS_TOKEN = os.environ["YOUS_SAS_TOKEN"]

# --- Logging Configuration ---
logging.basicConfig(level=logging.INFO)

# --- Speech to Text API Configuration (with v3.2) ---
endpoint = "https://my-speech-name.cognitiveservices.azure.com/speechtotext/v3.2/transcriptions"
headers = {
"Content-Type": "application/json",
"Ocp-Apim-Subscription-Key": SPEECH_API_KEY
}

app = func.FunctionApp()

@app.function_name(name="sttqueue")
@app.queue_trigger(arg_name="msg",
queue_name="transcription-queue",
connection="AzureWebJobsStorage")
async def sttqueue(msg: func.QueueMessage):
logging.info('Python Queue trigger function processed a queue item: %s', msg.get_body().decode('utf-8'))

try:
batch = json.loads(msg.get_body().decode('utf-8'))
logging.info(f"Processing batch: {batch}")

source_blob_client = BlobServiceClient.from_connection_string(STORAGE_CONNECTION_STRING)
destination_blob_client = BlobServiceClient.from_connection_string(STORAGE_CONNECTION_STRING)

async with source_blob_client, destination_blob_client:
source_container_client = source_blob_client.get_container_client(SOURCE_CONTAINER_NAME)
destination_container_client = destination_blob_client.get_container_client(DESTINATION_CONTAINER_NAME)

async with aiohttp.ClientSession() as session:
for blob_name in batch:
blob_url = f"https://{source_container_client.account_name}.blob.core.windows.net/{source_container_client.container_name}/{blob_name}?{YOUR_SAS_TOKEN}"
await transcribe_audio(blob_name, blob_url, session, destination_container_client, endpoint, headers)

except Exception as e:
logging.error(f"Error processing queue message: {e}")

async def transcribe_audio(blob_name, blob_url, session, destination_container_client, endpoint, headers):
try:
# . endpoint and headers)

except aiohttp.ClientError as e:
logging.error(f"Error communicating with Speech API: {e}")
except azure.core.exceptions.AzureError as e:
logging.error(f"Error accessing Azure Storage: {e}")
except Exception as e:
logging.error(f"Error transcribing {blob_name}: {e}")

return app  # Return the Function App object
Изображение

однако, когда я комментирую свою среду и конечные точки, моя функция развертывается без каких-либо проблем.
Изображение

как вы можете видеть после удаления конфигурационных окружений и конечной точки, функция доступна вместе с триггером . что я делаю не так? Есть предложения по устранению этой проблемы?

Подробнее здесь: https://stackoverflow.com/questions/793 ... ue-trigger
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение
  • Функции приложений Azure, триггер очереди хранилища
    Anonymous » » в форуме Python
    0 Ответы
    14 Просмотры
    Последнее сообщение Anonymous
  • Остановите триггер очереди функций Azure с помощью ArmClient
    Anonymous » » в форуме C#
    0 Ответы
    7 Просмотры
    Последнее сообщение Anonymous
  • Остановите триггер очереди функций Azure с помощью ArmClient
    Anonymous » » в форуме C#
    0 Ответы
    10 Просмотры
    Последнее сообщение Anonymous
  • Триггер очереди Azure срабатывает, но внутренняя логика не выполняется.
    Anonymous » » в форуме C#
    0 Ответы
    9 Просмотры
    Последнее сообщение Anonymous
  • Триггер очереди Azure нажимает, но не выполняет логику внутри нее
    Anonymous » » в форуме C#
    0 Ответы
    13 Просмотры
    Последнее сообщение Anonymous

Вернуться в «Python»