Desenvolver as Funções do Azure com o Visual Studio Code

A [extensão de Funções Azure para Visual Studio Código] permite-lhe desenvolver localmente funções e implantá-las para Azure. Se esta experiência for a sua primeira com funções Azure, pode aprender mais em Uma introdução às Funções Azure.

A extensão das funções Azure proporciona estes benefícios:

  • Editar, construir e executar funções no seu computador de desenvolvimento local.
  • Publique o seu projeto Azure Functions diretamente para a Azure.
  • Escreva as suas funções em várias línguas enquanto tira partido dos benefícios do Código Visual Studio.

A extensão pode ser utilizada com os seguintes idiomas, que são suportados pelo tempo de execução das Funções Azure, começando com a versão 2.x:

*Requer que estabeleça o script C# como o seu idioma de projeto predefinido.

Neste artigo, os exemplos estão atualmente disponíveis apenas para funções de biblioteca de classes JavaScript (Node.js) e C#.

Este artigo fornece detalhes sobre como usar a extensão de Funções Azure para desenvolver funções e publicá-las para Azure. Antes de ler este artigo, deverá criar a sua primeira função utilizando Visual Studio Código.

Importante

Não misture desenvolvimento local e desenvolvimento de portal para uma única aplicação de função. Ao publicar de um projeto local para uma aplicação de função, o processo de implementação substitui quaisquer funções que desenvolveu no portal.

Pré-requisitos

Antes de instalar e executar a [extensão Azure Functions][Azure Functions para Visual Studio Código,]tem de cumprir estes requisitos:

Se não tiver uma subscrição do Azure,crie uma conta gratuita antes de começar.

Outros recursos de que necessita, como uma conta de armazenamento Azure, são criados na sua subscrição quando publica usando Visual Studio Código.

Executar requisitos locais

Estes pré-requisitos só são necessários para executar e depurar as suas funções localmente. Não são obrigados a criar ou publicar projetos para as Funções Azure.

  • A versão 2.x ou mais tarde do Azure Functions Core Tools. O pacote Core Tools é descarregado e instalado automaticamente quando inicia o projeto localmente. As Ferramentas Core incluem todo o tempo de funcionamento das Funções Azure, pelo que o download e a instalação podem demorar algum tempo.

  • A extensão C# para o Visual Studio Code.

  • .NET Core CLI ferramentas.

Instale a extensão de Funções Azure

Pode utilizar a extensão Azure Functions para criar e testar funções e implantá-las para Azure.

  1. No Código do Estúdio Visual, abra extensões e procure funções de azul, ou selecione este link no Código do Estúdio Visual: vscode:extension/ms-azuretools.vscode-azurefunctions .

  2. Selecione instalar para instalar a extensão para Código estúdio visual:

    Instalar a extensão das Funções do Azure

  3. Após a instalação, selecione o ícone Azure na barra de Atividade. Deverá ver uma área de Funções do Azure na Barra Lateral.

    Área de Funções do Azure na Barra Lateral

Criar um projeto das Funções do Azure

A extensão funções permite criar um projeto de aplicação de função, juntamente com a sua primeira função. Os passos a seguir mostram como criar uma função desencadeada por HTTP num novo projeto de Funções. O gatilho HTTP é o modelo de gatilho de função mais simples para demonstrar.

  1. A partir de Azure: Funções, selecione o ícone Criar Função:

    Criar uma função

  2. Selecione a pasta para o seu projeto de aplicação de função e, em seguida, selecione um idioma para o seu projeto de função.

  3. Selecione o modelo de função do gatilho HTTP ou pode selecionar Skip por agora para criar um projeto sem uma função. Pode sempre adicionar uma função ao seu projeto mais tarde.

    Escolher o modelo do acionador HTTP

  4. Digite HttpExample para o nome da função e selecione Enter e, em seguida, selecione a autorização de função. Este nível de autorização requer que forneça uma chave de função quando ligar para o ponto final da função.

    Selecione a autorização de função

    Uma função é criada no seu idioma escolhido e no modelo para uma função desencadeada por HTTP.

    Modelo de função acionado por HTTP no Código Visual Studio

Ficheiros de projeto gerados

O modelo do projeto cria um projeto no seu idioma escolhido e instala dependências necessárias. Para qualquer língua, o novo projeto tem estes ficheiros:

  • host.js: Permite-lhe configurar o anfitrião funções. Estas definições aplicam-se quando está a executar funções localmente e quando as executa em Azure. Para mais informações, consulte host.jsa referência.

  • local.settings.jsem: Mantém as definições utilizadas quando está a executar funções localmente. Estas definições são utilizadas apenas quando estiver a executar funções localmente. Para obter mais informações, consulte o ficheiro de definições locais.

    Importante

    Como as local.settings.jsem ficheiro podem conter segredos, tens de o excluir do controlo de fontes do teu projeto.

Dependendo do seu idioma, estes outros ficheiros são criados:

Neste ponto, pode adicionar entradas e ligações de saída à sua função. Também pode adicionar uma nova função ao seu projeto.

Instalar as extensões de enlace

Com exceção dos gatilhos HTTP e timer, as ligações são implementadas em pacotes de extensão. Tem de instalar as embalagens de extensão para os gatilhos e encadernações que os necessitem. O processo de instalação de extensões de ligação depende da linguagem do seu projeto.

Execute o comando do pacote de adicionar dotnet na janela Terminal para instalar os pacotes de extensão que necessita no seu projeto. O seguinte comando instala a extensão Azure Armazenamento, que implementa encadernações para o armazenamento de Blob, Queue e Table.

dotnet add package Microsoft.Azure.WebJobs.Extensions.Storage --version 3.0.4

Adicione uma função ao seu projeto

Pode adicionar uma nova função a um projeto existente utilizando um dos modelos de gatilho de Funções predefinidas. Para adicionar um novo gatilho de função, selecione F1 para abrir a paleta de comando e, em seguida, procure e execute as funções de comando Azure: Criar Função. Siga as indicações para escolher o tipo de gatilho e defina os atributos necessários do gatilho. Se o seu gatilho necessitar de uma chave de acesso ou de uma cadeia de ligação para ligar a um serviço, prepare-o antes de criar o gatilho da função.

Os resultados desta ação dependem da linguagem do seu projeto:

Um novo ficheiro da biblioteca de classes C# (.cs) é adicionado ao seu projeto.

Ligar aos serviços

Pode ligar a sua função a outros serviços Azure adicionando encadernações de entrada e saída. As ligações ligam a sua função a outros serviços sem ter de escrever o código de ligação. O processo de adição de encadernações depende da linguagem do seu projeto. Para saber mais sobre encadernações, consulte a Azure Functions triggers e encaderna os conceitos.

Os exemplos a seguir ligam-se a uma fila de armazenamento denominada outqueue , onde o fio de ligação para a conta de armazenamento é definido na definição de MyStorageConnection aplicação local.settings.jsligado.

Atualizar o método de função para adicionar o seguinte parâmetro à definição do Run método:

[Queue("outqueue"),StorageAccount("AzureWebJobsStorage")] ICollector<string> msg,

O msg parâmetro é um ICollector<T> tipo, que representa uma coleção de mensagens que são escritas para uma ligação de saída quando a função termina. O seguinte código adiciona uma mensagem à coleção:

// Add a message to the output collection.
msg.Add(string.Format("Name passed to the function: {0}", name));

As mensagens são enviadas para a fila quando a função estiver concluída.

Para saber mais, consulte a documentação do artigo de referência de ligação de saída de armazenamento da Fila. Para saber mais em geral quais as ligações que podem ser adicionadas a uma função, consulte adicionar ligações a uma função existente em Funções Azure.

Iniciar sessão no Azure

Antes de poder publicar a aplicação, tem de iniciar sessão no Azure.

  1. Se ainda não se inscreveu, escolha o ícone Azure na barra de Atividades, então na área Azure: Funções, escolha Iniciar súmido para Azure.... Se ainda não tiver um, pode criar uma conta Azure gratuita. Os alunos podem criar uma conta Azure gratuita para os Estudantes.

    Inscreva-se no Azure dentro do Código VS

    Se já assinou, vá para a próxima secção.

  2. Quando solicitado no navegador, escolha a sua conta Azure e inscreva-se usando as suas credenciais de conta Azure.

  3. Depois de ter assinado com sucesso, pode fechar a nova janela do navegador. As subscrições que pertencem à sua conta Azure são apresentadas na barra Lateral.

Publicar no Azure

Visual Studio O Código permite-lhe publicar o seu projeto Funções diretamente para o Azure. No processo, vai criar uma aplicação de funções e recursos relacionados na sua subscrição do Azure. A aplicação de funções proporciona um contexto de execução para as suas funções. O projeto é empacotado e implementado na nova aplicação de funções na sua subscrição do Azure.

Quando publica de Visual Studio Código para uma nova aplicação de função em Azure, pode escolher uma aplicação de função rápida criar caminho usando predefinições ou um caminho avançado, onde você tem mais controlo sobre os recursos remotos criados.

Quando publica a partir de Visual Studio Código, aproveita-se a tecnologia zip deploy.

App de função rápida criar

Quando escolhe + Criar uma nova aplicação de função em Azure... a extensão gera automaticamente valores para os recursos Azure necessários pela sua aplicação de função. Estes valores baseiam-se no nome da aplicação de função que escolher. Para um exemplo de utilização de incumprimentos para publicar o seu projeto numa nova aplicação de função em Azure, consulte o artigo de arranque rápido do Código Visual Studio.

Se quiser fornecer nomes explícitos para os recursos criados, deve escolher o caminho avançado de criação.

Publique um projeto para uma nova aplicação de função em Azure usando opções avançadas

Os seguintes passos publicam o seu projeto para uma nova app de função criada com opções avançadas de criação:

  1. Na palete de comando, insira funções Azure: Implementar para a aplicação de função.

  2. Se não tiver assinado, é solicitado que entre em Azure. Também pode Criar uma conta Azure gratuita. Depois de iniciar sessão no browser, volte a Visual Studio Código.

  3. Se tiver várias subscrições, selecione uma subscrição para a aplicação de função e, em seguida, selecione + Criar nova aplicação de função em Azure... Avançado. Esta opção Avançada dá-lhe mais controlo sobre os recursos que cria no Azure.

  4. Seguindo as indicações, forneça estas informações:

    Prompt Valor Descrição
    Selecione app de função em Azure Criar nova aplicação de funções em Azure Na próxima posição, escreva um nome globalmente único que identifique a sua nova aplicação de função e, em seguida, selecione Enter. Os carateres válidos para um nome de aplicação de funções são a-z, 0-9 e -.
    Selecione um SISTEMA Windows A aplicação de função é executado em Windows.
    Selecione um plano de hospedagem Plano de consumo É utilizado um alojamento sem servidor.
    Selecione um tempo de execução para a sua nova aplicação A sua linguagem de projeto O tempo de execução deve coincidir com o projeto que vai publicar.
    Selecione um grupo de recursos para novos recursos Criar novo grupo de recursos Na próxima introdução, escreva um nome de grupo de recursos, myResourceGroup tipo, e, em seguida, selecione insira. Também pode selecionar um grupo de recursos existente.
    Selecione uma conta de armazenamento Criar nova conta de armazenamento Na próxima chamada, escreva um nome globalmente único para a nova conta de armazenamento utilizada pela sua aplicação de função e, em seguida, selecione Enter. Armazenamento nomes de conta devem ter entre 3 e 24 caracteres e conter apenas números e letras minúsculas. Também pode selecionar uma conta existente.
    Selecione uma localização para novos recursos region Selecione uma localização numa região perto de si ou perto de outros serviços a que as suas funções acedam.

    Uma notificação aparece após a criação da sua aplicação de função e o pacote de implementação é aplicado. Selecione Ver Saída nesta notificação para ver os resultados da criação e implementação, incluindo os recursos Azure que criou.

Obtenha o URL de uma função http desencadeada em Azure

Para chamar uma função desencadeada por HTTP de um cliente, precisa do URL da função quando é implantado na sua aplicação de função. Este URL inclui todas as teclas de função necessárias. Pode utilizar a extensão para obter estes URLs para as suas funções implantadas. Se apenas pretender executar a função remota em Azure, utilize agora a função Executar a funcionalidade da extensão.

  1. Selecione F1 para abrir a paleta de comando e, em seguida, procure e execute as funções de Azure de comando: Copiar URL de função.

  2. Siga as instruções para selecionar a sua aplicação de função em Azure e, em seguida, o gatilho HTTP específico que pretende invocar.

O URL de função é copiado para a área de transferência, juntamente com as teclas necessárias passadas pelo code parâmetro de consulta. Utilize uma ferramenta HTTP para submeter pedidos POST ou um browser para pedidos GET para a função remota.

Ao obter o URL das funções em Azure, a extensão utiliza a sua conta Azure para recuperar automaticamente as teclas de que necessita para iniciar a função. Saiba mais sobre as teclas de acesso à função. Iniciar funções ativadas não HTTP requer a utilização da tecla de administração.

Reempele os ficheiros do projeto

Quando configurar a implementação contínua,a sua aplicação de função no Azure é atualizada quando atualiza ficheiros de origem no local de origem conectado. Recomendamos a implementação contínua, mas também pode republicar as atualizações de ficheiros do seu projeto a partir de Visual Studio Código.

Importante

A publicação de uma aplicação de funções existente substitui o conteúdo dessa aplicação no Azure.

  1. No Código do Estúdio Visual, selecione F1 para abrir a paleta de comando. Na paleta de comando, procure e selecione Funções Azure: Implementar para funcionar a aplicação.

  2. Se não tiver assinado, é solicitado que entre em Azure. Depois de iniciar sins in a partir do navegador, volte ao Código do Estúdio Visual. Se tiver várias subscrições, selecione uma subscrição que contenha a sua aplicação de função.

  3. Selecione a sua aplicação de função existente em Azure. Quando for avisado sobre a sobreposição de todos os ficheiros na aplicação de função, selecione Implementar para reconhecer o aviso e continuar.

O projeto é reconstruído, reembalado e enviado para Azure. O projeto existente é substituído pelo novo pacote, e a aplicação de função reinicia.

Executar funções

A extensão Azure Functions permite executar funções individuais, quer no seu projeto no seu computador de desenvolvimento local, quer na sua subscrição Azure.

Para funções de gatilho HTTP, a extensão chama o ponto final HTTP. Para outros tipos de gatilhos, chama apis do administrador para iniciar a função. O corpo de mensagem do pedido enviado para a função depende do tipo de gatilho. Quando um gatilho requer dados de teste, é-lhe solicitado que introduza dados num formato JSON específico.

Executar funções em Azure

Executar uma função em Azure a partir de Visual Studio Código.

  1. Na palete de comando, insira funções Azure: Execute a função agora e escolha a sua subscrição Azure.

  2. Escolha a sua aplicação de função em Azure da lista. Se não vir a sua aplicação de função, certifique-se de que está inscrito na subscrição correta.

  3. Escolha a função que pretende executar a partir da lista e digite o corpo de mensagem do pedido no formulário de pedido de enterr . Prima Insira para enviar esta mensagem de pedido para a sua função. O texto predefinido no corpo de pedido de introdução deve indicar o formato do corpo. Se a sua aplicação de função não tiver funções, é mostrado um erro de notificação com este erro.

  4. Quando a função executa em Azure e devolve uma resposta, uma notificação é levantada em Visual Studio Código.

Também pode executar a sua função a partir da área Azure: Funções clicando à direita (clicando em Mac) a função que pretende executar a partir da sua aplicação de função na sua subscrição Azure e escolhendo executar função agora....

Ao executar funções em Azure, a extensão utiliza a sua conta Azure para recuperar automaticamente as teclas de que necessita para iniciar a função. Saiba mais sobre as teclas de acesso à função. Iniciar funções ativadas não HTTP requer a utilização da tecla de administração.

Executar funções localmente

O tempo de execução local é o mesmo tempo de execução que acolhe a sua aplicação de função em Azure. As definições locais são lidas a partir do local.settings.jsno ficheiro. Para executar o seu projeto Funções localmente, deve cumprir requisitos adicionais.

Configure o projeto para executar localmente

O tempo de execução das Funções utiliza uma conta Azure Armazenamento internamente para todos os tipos de gatilhos que não http e webhooks. Por isso, é necessário definir a tecla Values.AzureWebJobsStorage para uma cadeia de ligação de conta Azure Armazenamento válida.

Esta secção utiliza a extensão Armazenamento Azure para Visual Studio Código com Explorador de Armazenamento do Azure para ligar e recuperar a cadeia de ligação de armazenamento.

Para definir o fio de ligação da conta de armazenamento:

  1. Em Visual Studio, abra o Cloud Explorer, expanda Armazenamento Conta A Sua Conta > Armazenamento e, em seguida, selecione Propriedades e copie o valor da Cadeia de Ligação Primária.

  2. No seu projeto, abra a local.settings.jsem arquivo e descreva o valor da chave AzureWebJobsStorage para a cadeia de ligação que copiou.

  3. Repita o passo anterior para adicionar teclas únicas à matriz Valores para quaisquer outras ligações necessárias às suas funções.

Para obter mais informações, consulte o ficheiro de definições locais.

Debug funciona localmente

Para depurar as suas funções, selecione F5. Se ainda não descarregou as Ferramentas Principais [do Core Tools][Azure Functions,]é-lhe pedido que o faça. Quando as Ferramentas Core são instaladas e em funcionamento, a saída é mostrada no Terminal. Isto é o mesmo que executar o func host start comando Core Tools a partir do Terminal, mas com tarefas de construção extra e um depurado anexado.

Quando o projeto estiver em execução, pode utilizar a função executar agora... função da extensão para desencadear as suas funções como faria quando o projeto é implantado para Azure. Com o projeto em modo de depuração, os pontos de rutura são atingidos no Código Visual Studio como seria de esperar.

  1. Na palete de comando, insira funções Azure: Execute a função agora e escolha projeto local.

  2. Escolha a função que pretende executar no seu projeto e digite o corpo de mensagens do pedido no corpo de pedido de Enter. Prima Insira para enviar esta mensagem de pedido para a sua função. O texto predefinido no corpo de pedido de introdução deve indicar o formato do corpo. Se a sua aplicação de função não tiver funções, é mostrado um erro de notificação com este erro.

  3. Quando a função é executado localmente e após a resposta ser recebida, uma notificação é levantada no Código Visual Studio. As informações sobre a execução da função são mostradas no painel terminal.

As funções de funcionamento local não requerem a utilização de chaves.

Ficheiro de definições locais

O local.settings.jsnas configurações de aplicações de lojas de ficheiros, cordas de ligação e configurações utilizadas pelas ferramentas de desenvolvimento local. As definições no local.settings.jsno ficheiro são usadas apenas quando se está a executar projetos localmente. O ficheiro de configurações locais tem esta estrutura:

{
  "IsEncrypted": false,
  "Values": {
    "FUNCTIONS_WORKER_RUNTIME": "<language worker>",
    "AzureWebJobsStorage": "<connection-string>",
    "AzureWebJobsDashboard": "<connection-string>",
    "MyBindingConnection": "<binding-connection-string>",
    "AzureWebJobs.HttpExample.Disabled": "true"
  },
  "Host": {
    "LocalHttpPort": 7071,
    "CORS": "*",
    "CORSCredentials": false
  },
  "ConnectionStrings": {
    "SQLConnectionString": "<sqlclient-connection-string>"
  }
}

Estas definições são suportadas quando executam projetos localmente:

Definições Descrição
IsEncrypted Quando esta definição está definida para true , todos os valores são encriptados com uma chave de máquina local. Usado com func settings comandos. O valor predefinido é false. É possível que pretenda encriptar as local.settings.jsno ficheiro do computador local quando este contiver segredos, tais como cadeias de ligação de serviço. O anfitrião desencripta automaticamente as definições quando funciona. Utilize o func settings decrypt comando antes de tentar ler as definições encriptadas localmente.
Values Conjunto de configurações de aplicações e cordas de conexão usadas quando um projeto está em execução local. Estes pares de valor-chave (string-string) correspondem às definições de aplicação na sua aplicação de função em Azure, como [AzureWebJobsStorage] . Muitos gatilhos e encadernações têm uma propriedade que se refere a uma definição de aplicação de cadeia de ligação, como Connection para o gatilho de armazenamento Blob. Para estas propriedades, você precisa de uma definição de aplicação definida na Values matriz. Consulte a tabela seguinte para obter uma lista de configurações comumente utilizadas.
Os valores devem ser cordas e não objetos ou matrizes JSON. Definir nomes não pode incluir um cólon : () ou um duplo sublinhado __ (). Os caracteres de duplo sublinhado são reservados pelo tempo de execução, e o cólon é reservado para apoiar a injeção de dependência.
Host As definições nesta secção personalizam o processo de anfitrião de Funções quando executar projetos localmente. Estas definições são separadas do host.jsnas definições, que também se aplicam quando executam projetos em Azure.
LocalHttpPort Define a porta predefinida utilizada quando executa o hospedeiro local de funções func host start (e func run . A --port opção de linha de comando tem precedência sobre esta definição. Por exemplo, ao executar no Visual Studio IDE, pode alterar o número de porta navegando para a janela "Project Properties -> Debug" e especificando explicitamente o número da porta num host start --port <your-port-number> comando que pode ser fornecido no campo "Argumentos de Aplicação".
CORS Define as origens permitidas para a partilha de recursos de origem cruzada (CORS). As origens são fornecidas como uma lista separada por vírgula sem espaços. O valor wildcard é * suportado, o que permite pedidos de qualquer origem.
CORSCredentials Quando definido true para, permite withCredentials pedidos.
ConnectionStrings Uma coleção. Não utilize esta coleção para as cordas de ligação utilizadas pelas ligações da sua função. Esta coleção é utilizada apenas por quadros que normalmente obtêm cordas de ligação a partir ConnectionStrings da secção de um ficheiro de configuração, como o Entity Framework. As cadeias de ligação neste objeto são adicionadas ao ambiente com o tipo de fornecedor de System.Data.SqlClient. Os itens desta coleção não são publicados no Azure com outras configurações de aplicações. Deve adicionar explicitamente estes valores à Connection strings recolha das definições da aplicação de função. Se estiver a criar um SqlConnection código de função, deverá armazenar o valor da cadeia de ligação com as outras ligações nas Definições de Aplicação no portal.

As seguintes definições de aplicação podem ser incluídas na Values matriz quando correrem localmente:

Definição Valores Descrição
AzureWebJobsStorage Cadeia de ligação de conta de armazenamento, ou
UseDevelopmentStorage=true
Contém o fio de ligação para uma conta de armazenamento Azure. Necessário ao utilizar gatilhos diferentes do HTTP. Para mais informações, consulte a [AzureWebJobsStorage] referência.
Quando tiver o Emulador de Armazenamento Azure instalado localmente e definido [AzureWebJobsStorage] UseDevelopmentStorage=true para, a Core Tools utiliza o emulador. O emulador é útil durante o desenvolvimento, mas deve testar com uma ligação de armazenamento real antes de ser implantado.
AzureWebJobs.<FUNCTION_NAME>.Disabled true|false Para desativar uma função quando estiver a funcionar localmente, adicione "AzureWebJobs.<FUNCTION_NAME>.Disabled": "true" à coleção, onde <FUNCTION_NAME> está o nome da função. Para saber mais, consulte Como desativar funções em Funções Azure
FUNCTIONS_WORKER_RUNTIME dotnet
node
java
powershell
python
Indica a linguagem direcionada do tempo de funcionamento das Funções. Necessário para a versão 2.x e superior do tempo de funcionamento das Funções. Esta definição é gerada para o seu projeto pela Core Tools. Para saber mais, consulte a FUNCTIONS_WORKER_RUNTIME referência.
FUNCTIONS_WORKER_RUNTIME_VERSION ~7 Indica que o PowerShell 7 deve ser utilizado quando funciona localmente. Se não estiver definido, então o PowerShell Core 6 é utilizado. Esta definição só é utilizada quando funciona localmente. Ao correr em Azure, a versão de tempo de execução PowerShell é determinada pela definição de configuração do powerShellVersion site, que pode ser definida no portal.

Por padrão, estas definições não são migradas automaticamente quando o projeto é publicado para a Azure. Após a publicação de acabamentos, é-lhe dada a opção de publicar definições a partir de local.settings.jspara a sua aplicação de função em Azure. Para saber mais, consulte as definições de aplicação da Publicação.

Os valores em ConnectionStrings nunca são publicados.

Os valores de definição de aplicação de função também podem ser lidos no seu código como variáveis ambientais. Para obter mais informações, consulte as secções de variáveis ambientais destes artigos de referência específicos da língua:

Definições de aplicação em Azure

As definições no local.settings.jsem ficheiro no seu projeto devem ser as mesmas que as definições de aplicação na aplicação de função em Azure. Quaisquer definições que adicione a local.settings.jstambém devem adicionar à aplicação de função em Azure. Estas definições não são carregadas automaticamente quando publica o projeto. Da mesma forma, quaisquer configurações que crie na sua aplicação de função no portal devem ser descarregadas para o seu projeto local.

Publicar definições de aplicações

A forma mais fácil de publicar as definições necessárias para a sua aplicação de função no Azure é utilizar o link de definições de upload que aparece após a publicação do seu projeto:

Definires de aplicações de upload

Também pode publicar definições utilizando as funções Azure: Carregar o comando De Definição Local na paleta de comando. Pode adicionar definições individuais às definições de aplicação em Azure utilizando as funções Azure: Adicionar o comando De Nova Definição.

Dica

Certifique-se de guardar o seu local.settings.jsarquivado antes de publicá-lo.

Se o ficheiro local for encriptado, é desencriptado, publicado e encriptado novamente. Se houver configurações que tenham valores contraditórios nos dois locais, é-lhe pedido que escolha como proceder.

Ver as definições de aplicações existentes na área Azure: Funções expandindo a sua subscrição, a sua aplicação de função e Definições de aplicação.

Ver definições de aplicativo de função no Código Visual Studio

Baixar definições a partir de Azure

Se criou as definições de aplicações no Azure, pode descarregá-las para o seu local.settings.jsno ficheiro utilizando o comando Azure Functions: Descarregue o comando de Definições remoto.

Tal como no upload, se o ficheiro local for encriptado, é desencriptado, atualizado e encriptado novamente. Se houver configurações que tenham valores contraditórios nos dois locais, é-lhe pedido que escolha como proceder.

Funções de monitorização

Quando executar funções locais,os dados de registo são transmitidos para a consola Terminal. Também pode obter dados de registo quando o seu projeto Funções está a decorrer numa aplicação de função em Azure. Pode ligar-se a registos de streaming em Azure para ver dados de registo em tempo real, ou pode ativar a aplicação Informações para uma compreensão mais completa de como a sua aplicação de função se está a comportar.

Registos de transmissão em fluxo

Quando se está a desenvolver uma aplicação, é muitas vezes útil ver informações de registo em tempo quase real. Pode ver um fluxo de ficheiros de registo a ser gerado pelas suas funções. Esta saída é um exemplo de registos de streaming para um pedido a uma função desencadeada por HTTP:

Saída de registos de streaming para o gatilho HTTP

Para saber mais, consulte os registos de streaming.

Para ativar os registos de transmissão em fluxo para a sua aplicação de funções no Azure:

  1. Selecione F1 para abrir a paleta de comandos e, em seguida, procure e execute o comando Funções do Azure: Iniciar Registos de Transmissão em Fluxo.

  2. Selecione a sua aplicação de funções no Azure e, em seguida, selecione Sim para ativar o registo de aplicações da aplicação de funções.

  3. Acione as suas funções no Azure. Note que os dados de registo são apresentados na janela Output (Saída) no Visual Studio Code.

  4. Quando terminar, lembre-se de executar o comando Funções do Azure: Parar Registos de Transmissão em Fluxo para desativar o registo da aplicação de funções.

Nota

Os registos de streaming suportam apenas uma única instância do anfitrião Funções. Quando a sua função é dimensionada para múltiplas instâncias, os dados de outras instâncias não são mostrados no fluxo de registo. Live Metrics Stream in Application Informações suporta várias instâncias. Embora também em tempo quase real, a análise de streaming baseia-se em dados amostrados.

Application Insights

Recomendamos que monitorize a execução das suas funções integrando a sua aplicação de função com Informações de aplicação. Quando cria uma aplicação de função no portal Azure, esta integração ocorre por padrão. Quando criar a sua aplicação de função durante Visual Studio publicação, tem de integrar a Aplicação Informações si mesmo. Para saber como, consulte Enable Application Informações integração.

Para saber mais sobre a monitorização utilizando o Informações de aplicação, consulte as Funções Do Monitor Azure.

Projetos # de script C

Por predefinição, todos os projetos C# são criados como projetos de biblioteca de classes compiladas C# . Se preferir trabalhar com projetos de script C# em vez disso, deve selecionar o script C# como o idioma predefinido nas definições de extensão de Funções Azure:

  1. Selecione > Preferências de Ficheiros > Definições.

  2. Aceda às > > funções de Azure extensões de Definições do utilizador .

  3. Selecione C#Script da Função Azure: Project idioma.

Depois de completar estes passos, as chamadas feitas para as Ferramentas Core subjacentes incluem a --csx opção, que gera e publica ficheiros de projeto de script C# (.csx). Quando tiver este idioma predefinido especificado, todos os projetos que cria padrão para projetos de script C#. Não é solicitado a escolher uma linguagem de projeto quando um padrão é definido. Para criar projetos em outros idiomas, tem de alterar esta definição ou removê-la do utilizador settings.jsficheiro. Depois de remover esta definição, é novamente solicitado a escolher o seu idioma quando criar um projeto.

Referência da paleta de comando

A extensão Azure Functions fornece uma interface gráfica útil na área para interagir com as suas aplicações de função em Azure. A mesma funcionalidade também está disponível como comandos na paleta de comandos (F1). Estes comandos Azure Functions estão disponíveis:

Comando de Funções Azure Description
Adicionar nova Definições Cria uma nova definição de aplicação em Azure. Para saber mais, consulte as definições de aplicação da Publicação. Também poderá ter de descarregar esta definição para as suas definições locais.
Configure Fonte de Implantação Liga a sua aplicação de função em Azure a um repositório local de Git. Para saber mais, consulte a implementação contínua para Funções Azure.
Ligação ao Repositório GitHub Liga a sua aplicação de função a um repositório GitHub.
URL de função de cópia Obtém o URL remoto de uma função desencadeada por HTTP que está a funcionar em Azure. Para saber mais, consulte obter o URL da função implantada.
Criar app de função em Azure Cria uma nova aplicação de função na sua subscrição em Azure. Para saber mais, consulte a secção sobre como publicar para uma nova aplicação de funções em Azure.
Desencriptação Definições Desencripta as definições locais que foram encriptadas por Azure Functions: Encrypt Definições.
Eliminar App de função Remove uma aplicação de função da sua subscrição em Azure. Quando não há outras aplicações no plano do Serviço de Aplicações, é-lhe dada a opção de apagar isso também. Outros recursos, como contas de armazenamento e grupos de recursos, não são eliminados. Para remover todos os recursos, deve em vez disso eliminar o grupo de recursos. O seu projeto local não foi afetado.
Eliminar Função Remove uma função existente de uma aplicação de função em Azure. Porque esta eliminação não afeta o seu projeto local, em vez disso considere remover a função localmente e, em seguida, reeditar o seu projeto.
Excluir Proxy Remove um proxy Azure Functions da sua aplicação de função em Azure. Para saber mais sobre os proxies, consulte Work with Azure Functions Proxies.
Excluir Definição Elimina uma definição de aplicação de função em Azure. Esta eliminação não afeta as definições do seu local.settings.jsno ficheiro.
Desligar do Repo Remove a ligação de implementação contínua entre uma aplicação de função em Azure e um repositório de controlo de fonte.
Baixar Definições remoto Descarrega as definições da aplicação de função escolhida em Azure para o seu local.settings.jsno ficheiro. Se o ficheiro local estiver encriptado, é desencriptado, atualizado e encriptado novamente. Se houver configurações que tenham valores contraditórios nos dois locais, é-lhe pedido que escolha como proceder. Certifique-se de que guarda alterações no seu local.settings.jsno ficheiro antes de executar este comando.
Editar definições Altera o valor de uma definição de aplicação de função existente no Azure. Este comando não afeta as definições do seu local.settings.jsno ficheiro.
Configurações encriptadas Encripta itens individuais na Values matriz nas definições locais. Neste ficheiro, IsEncrypted também é definido para , que especifica que o tempo de true execução local irá desencriptar as definições antes de as utilizar. Criptografe as definições locais para reduzir o risco de fuga de informação valiosa. No Azure, as definições de aplicações são sempre armazenadas encriptadas.
Executar função agora Inicia manualmente uma função utilizando APIs de administração. Este comando é utilizado para testes, tanto localmente durante a depuração como contra funções em execução em Azure. Ao ativar uma função em Azure, a extensão obtém primeiro automaticamente uma tecla de administração, que utiliza para chamar as APIs de administração remota que iniciam funções em Azure. O corpo da mensagem enviada à API depende do tipo de gatilho. Os gatilhos do temporizador não exigem que passe nenhum dado.
Inicialize Project para utilização com código VS Adiciona os ficheiros de projetos Visual Studio Code necessários a um projeto de Funções existente. Utilize este comando para trabalhar com um projeto que criou utilizando Ferramentas Core.
Instalar ou atualizar funções Azure Funções Ferramentas principais Instala ou atualiza Azure Functions Core Tools, que é utilizado para executar funções localmente.
Voltar a implementar Permite-lhe recolocar ficheiros de projetos de um repositório de Git ligado a uma implantação específica em Azure. Para republicar as atualizações locais a partir do Código Visual Studio, reebine o seu projeto.
Definições de renome Altera o nome-chave de uma definição de aplicação de função existente no Azure. Este comando não afeta as definições do seu local.settings.jsno ficheiro. Depois de mudar o nome das definições em Azure, deverá descarregar essas alterações para o projeto local.
Reiniciar Reinicia a aplicação de função em Azure. A implementação de atualizações também reinicia a aplicação de função.
Definir AzureWebJobsStorage Define o valor da definição de AzureWebJobsStorage aplicação. Esta definição é requerida pelas Funções Azure. É definido quando uma aplicação de função é criada em Azure.
Iniciar Inicia uma aplicação de função parada em Azure.
Iniciar registos de streaming Inicia os registos de streaming para a aplicação de função em Azure. Utilize registos de streaming durante a resolução remota de problemas em Azure, se precisar de ver informações de registo em tempo quase real. Para saber mais, consulte os registos de streaming.
Parar Para uma aplicação de função que está a ser executada em Azure.
Parar os registos de streaming Para os registos de streaming para a aplicação de função em Azure.
Alternar como Definição de Ranhura Quando ativado, assegura-se de que a definição de aplicação persiste para uma determinada ranhura de implantação.
Desinstalar as funções principais das funções Remove Azure Functions Core Tools, que é exigido pela extensão.
Upload Local Definições O upload das definições do seu local.settings.jsno ficheiro para a aplicação de função escolhida em Azure. Se o ficheiro local estiver encriptado, é desencriptado, carregado e encriptado novamente. Se houver configurações que tenham valores contraditórios nos dois locais, é-lhe pedido que escolha como proceder. Certifique-se de que guarda alterações no seu local.settings.jsno ficheiro antes de executar este comando.
Ver Cometer em GitHub Mostra-lhe o mais recente compromisso numa implementação específica quando a sua aplicação de função está ligada a um repositório.
Ver Registos de Implementação Mostra-lhe os registos para uma implementação específica para a aplicação de função em Azure.

Passos seguintes

Para saber mais sobre as ferramentas principais do Azure Functions, consulte Ferramentas principais do Trabalho com Funções Azure.

Para saber mais sobre o desenvolvimento de funções como bibliotecas de classe .NET, consulte a referência do programador Azure Functions C#. Este artigo também fornece links para exemplos de como usar atributos para declarar os vários tipos de encadernações suportados por Funções Azure.