Ao criar um custom runtime, o Function Compute transmite o contexto e os metadados de execução para o seu runtime por meio de cabeçalhos de requisição HTTP. Esta página descreve esses cabeçalhos e os formatos de log recebidos pelo seu runtime.
Cabeçalhos de requisição
O Function Compute gera automaticamente um conjunto de cabeçalhos de requisição comuns e os envia ao seu custom runtime a cada invocação. Tanto funções de evento quanto funções HTTP recebem esses cabeçalhos.
Para chamar outros serviços da Alibaba Cloud no código da sua função, utilize as credenciais temporárias nos cabeçalhosx-fc-access-key-id,x-fc-access-key-secretex-fc-security-token. Caso esteja migrando uma aplicação existente para o Function Compute, ignore a maioria desses cabeçalhos.
|
Cabeçalho |
Descrição |
Exemplo |
|
|
ID exclusivo desta invocação. |
|
|
|
AccessKey ID temporário. O Function Compute chama AssumeRole para obter esse valor após você configurar uma função (role) para a função. |
|
|
|
Segredo do AccessKey temporário, obtido da mesma forma que o |
|
|
|
Token de segurança temporário, obtido da mesma forma que o |
|
|
|
Handler da função. Em um custom runtime ou Custom Container runtime, esse valor é ignorado — defina-o como qualquer string. |
|
|
|
Memória máxima permitida para uso pela função. |
|
|
|
Região onde a função é executada. |
|
|
|
ID da conta do proprietário da função. |
|
|
|
Versão do serviço ou alias especificado na invocação da função. Para mais detalhes, consulte Usar versões e aliases para implementar canary release. |
|
|
|
Versão específica do serviço definida na invocação. |
|
|
|
Nome da função. |
|
|
|
Projeto de log do Simple Log Service (SLS) configurado para o serviço ao qual a função pertence. |
|
|
|
Logstore do Simple Log Service configurado para o serviço ao qual a função pertence. |
|
|
|
Tipo de requisição. Consulte a tabela abaixo para valores válidos. |
|
Valores de x-fc-control-path
|
Valor |
Significado |
|
|
Invocação de função de evento. |
|
|
Invocação de função HTTP. O Function Compute adiciona cabeçalhos comuns contendo o caminho da requisição, corpo e cabeçalhos originais, encaminha a requisição para o seu runtime e devolve os cabeçalhos e o corpo da resposta ao cliente. |
|
|
Chamada do hook Initializer. O Function Compute envia essa requisição na primeira vez que cria um ambiente de runtime. Assim como um construtor de classe, o hook Initializer executa apenas uma vez durante o ciclo de vida de um container. |
O cabeçalho x-fc-security-token não é suportado no Custom Runtime (Debian 11). Para obter credenciais temporárias nesse ambiente, leia as variáveis de ambiente ALIBABA_CLOUD_ACCESS_KEY_ID, ALIBABA_CLOUD_ACCESS_KEY_SECRET e ALIBABA_CLOUD_SECURITY_TOKEN. Para mais detalhes, consulte Configurar variáveis de ambiente.
Formatos de log
Logs da aplicação (stdout)
Ative o recurso de logging ao criar um serviço do Function Compute. Toda saída gravada no stdout do seu custom runtime é coletada automaticamente no Logstore do Simple Log Service configurado. Para instruções de configuração, consulte Configure o recurso de logging.
Logs de execução (x-fc-log-result)
Este tipo de log aplica-se a runtimes diferentes de custom runtimes e Custom Container runtimes. Se a requisição de invocação incluir o cabeçalho x-fc-log-type: Tail, a resposta conterá um cabeçalho x-fc-log-result com os logs de execução da função. Cada entrada de log tem limite de 4 KB. Visualize esses logs nos resultados de invocação da função no console do Function Compute.
A API para especificar o nível de log varia conforme a linguagem de programação. Para detalhes específicos de cada linguagem, consulte Conceitos básicos .
Próximos passos
Visão geral — Conceitos e arquitetura de custom runtime
Princípios — Cold starts e configuração de servidor HTTP em um custom runtime
Funções web — Como invocar funções em um custom runtime
Hooks de ciclo de vida para instâncias de função — Implementação de hooks de ciclo de vida em um custom runtime