Biblioteca de clientes do Azure IoT Time Series Insights para .NET – versão 1.0.0-beta.1

Essa biblioteca fornece acesso ao serviço Azure Time Series Insights.

Código-fonte

Introdução

O SDK completo do Microsoft Azure pode ser baixado na página de downloads do Microsoft Azure e é fornecido com suporte para a criação de pacotes de implantação, integração com ferramentas, ferramentas de linha de comando avançadas e muito mais.

Para obter a melhor experiência de desenvolvimento, os desenvolvedores devem usar os pacotes NuGet oficiais da Microsoft para bibliotecas. Os pacotes NuGet são atualizados regularmente com novas funcionalidades e hotfixes.

Instalar o pacote

Nenhum pacote foi publicado para esta biblioteca de clientes ainda.

Pré-requisitos

  • Uma assinatura do Microsoft Azure

Autenticar o cliente

Para interagir com o serviço Azure Time Series Insights, você precisará criar uma instância de uma classe TokenCredential e passá-la para o construtor de seu TimeSeriesInsightsClient.

Principais conceitos

Os conceitos main do cliente Time Series Insights incluem:

  • Cliente de instâncias: para executar operações como criar, listar, substituir e excluir instâncias de Série Temporal.
  • Clientes de tipos: para executar operações como criar, listar, substituir e excluir tipos de Série Temporal.
  • Cliente de hierarquias: para executar operações como criar, listar, substituir e excluir hierarquias de Série Temporal.
  • Cliente de Configurações de Modelo: para executar operações como obter e atualizar as definições de configuração do Modelo de Série Temporal.
  • Cliente de consulta: para consultar eventos, séries e séries agregadas no Time Series Insights.

Acesso thread-safe

Garantimos que todos os métodos de instância do cliente sejam thread-safe e independentes uns dos outros (diretriz). Isso garante que o reutilizando instâncias de cliente seja sempre seguro, mesmo entre threads.

Conceitos adicionais

Opções do | cliente Acessando a resposta | Operações de execução longa | Tratamento de falhas | Diagnostics | Zombando | Tempo de vida do cliente

Exemplos

Você pode se familiarizar com APIs diferentes usando exemplos para o Time Series Insights.

Estrutura da pasta do código-fonte

/Src

O cliente público do Time Series Insights, TimeSeriesInsightsCliente as opções de configuração adicionais, TimeSeriesInsightsClientOptions, que podem ser enviadas para o serviço Time Series Insights.

/src/Generated

O código gerado pelo autorest usando o arquivo swagger definido no arquivo de configuração mais automático.

Para regenerar o código, execute o script do PowerShell generate.ps1.

Sempre que o código da biblioteca de clientes é atualizado, os seguintes scripts precisam ser executados:

  • Export-AdtApis.ps1, que atualizará o documento surface da API.
  • Update-Snippets.ps1, que atualizará todos os snippets de código nos arquivos leiame e nos comentários da documentação do cliente.

/src/Customized

O código personalizado gravado para substituir o seguinte comportamento do código gerado automaticamente:

  • Declare alguns dos tipos gerados como internos, em vez do padrão de registro automático público.

/src/Models

Classes de modelo úteis para uso com as operações de cliente do Time Series Insights.

/src/Properties

Propriedades de assembly necessárias para executar testes de unidade.

Solução de problemas

As falhas de operação de serviço do Time Series Insights geralmente são retornadas ao usuário como TimeSeriesOperationError. A resposta TimeSeriesOperationError é retornada diretamente pela API da biblioteca de clientes ou como uma propriedade aninhada dentro da resposta real para a API da biblioteca de clientes. Por exemplo, a API DeleteByName que faz parte do cliente de hierarquias retorna um TimeSeriesOperationError diretamente. Enquanto a API Replace que faz parte do cliente de instâncias retorna um InstancesOperationResult, que tem uma propriedade TimeSeriesOperationError aninhada dentro dela.

O exemplo a seguir mostra o uso da operação TimeSeriesInsightsSampleGetTypeById, iterar por meio do erro de resposta para descobrir se um tipo não existe.

// Code snippet below shows getting a default Type using Id
// The default type Id can be obtained programmatically by using the ModelSettings client.

TimeSeriesInsightsModelSettings modelSettingsClient = client.GetModelSettingsClient();
TimeSeriesModelSettings modelSettings = await modelSettingsClient.GetAsync();
Response<TimeSeriesTypeOperationResult[]> getTypeByIdResults = await typesClient
    .GetByIdAsync(new string[] { modelSettings.DefaultTypeId });

// The response of calling the API contains a list of type or error objects corresponding by position to the input parameter array in the request.
// If the error object is set to null, this means the operation was a success.
for (int i = 0; i < getTypeByIdResults.Value.Length; i++)
{
    if (getTypeByIdResults.Value[i].Error == null)
    {
        Console.WriteLine($"Retrieved Time Series type with Id: '{getTypeByIdResults.Value[i].TimeSeriesType.Id}'.");
    }
    else
    {
        Console.WriteLine($"Failed to retrieve a Time Series type due to '{getTypeByIdResults.Value[i].Error.Message}'.");
    }
}

Próximas etapas

Confira exemplos de implementação com nossos exemplos de código.

Contribuição

Este projeto aceita contribuições e sugestões. A maioria das contribuições exige que você concorde com um CLA (Contrato de Licença do Colaborador) declarando que você tem o direito de nos conceder, e de fato concede, os direitos de usar sua contribuição. Para obter detalhes, acesse https://cla.microsoft.com.

Quando você envia uma solicitação de pull, um bot do CLA determina automaticamente se você precisa fornecer um CLA e preencher a PR corretamente (por exemplo, rótulo, comentário). Basta seguir as instruções fornecidas pelo bot. Você só precisará fazer isso uma vez em todos os repositórios que usam nosso CLA.

Este projeto adotou o Código de Conduta de Software Livre da Microsoft. Para obter mais informações, confira as Perguntas Frequentes Sobre o Código de Conduta ou entre em contato pelo email opencode@microsoft.com para enviar outras perguntas ou comentários.