Manipulando dados de evento de uso
Aplica-se a: Windows Azure Pack
Em um Windows sistema de cobrança do Azure Pack for Windows Server, espera-se que os dados de evento de uso sobre o gerenciamento de locatários de assinaturas, planos e assim por diante sejam usados para calcular as informações de cobrança do locatário. Para fazer isso, o adaptador de cobrança do sistema de cobrança usa a API REST de uso para coletar dados de evento de uso e criar um banco de dados de uso aplicável às necessidades de cobrança.
Obtendo eventos de uso
O ponto de extremidade do Serviço de Uso expõe a API REST para retornar dados de cobrança para planos, planejar complementos, planejar serviço, complementos e assinaturas. Por exemplo, para recuperar os eventos de plano, a chamada à API REST de Eventos de Plano de Recuperação é feita:
https://<Computer>:30022/billing/plans?startId=0&batchSize=1 HTTP/1.1
Accept: application/json
Authorization: basic <Token>
Host: <Computer>:30022
Connection: Keep-Alive
O corpo da resposta retorna uma lista de objetos UsageEvent (Objeto de Medição de Uso) que contêm os eventos de plano recentes. Por exemplo:
[
{
"EventId": 1,
"State": 0,
"Method": "0",
"Entity": {
"Id": "Idjt711xf",
"DisplayName": "TheDisplayName",
"State": 0,
"ConfigState": 0,
"QuotaSyncState": 2,
"LastErrorMessage": null,
"Advertisements": [
{
"LanguageCode": "en-us",
"DisplayName": "TheDisplayName",
"Description": null
}
],
"ServiceQuotas": [
{
"ServiceName": "webspaces",
"ServiceInstanceId": "4576E3B4-881D-4B9F-87F4-E72206FB11D6",
"ServiceDisplayName": "Web Site Cloud",
"ServiceInstanceDisplayName": null,
"ConfigState": 0,
"QuotaSyncState": 2,
"Settings": [
]
},
{
"ServiceName": "sqlservers",
"ServiceInstanceId": "2FBED6DE-5195-4F95-98DC-B67829621025",
"ServiceDisplayName": "SQL Servers",
"ServiceInstanceDisplayName": null,
"ConfigState": 0,
"QuotaSyncState": 2,
"Settings": [
]
},
{
"ServiceName": "mysqlservers",
"ServiceInstanceId": "0C18772C-3596-4E2A-BD60-21230C186D17",
"ServiceDisplayName": "MySQL Servers",
"ServiceInstanceDisplayName": null,
"ConfigState": 0,
"QuotaSyncState": 2,
"Settings": [
]
},
{
"ServiceName": "servicebus",
"ServiceInstanceId": "B40CC649-1ACE-4134-ADC9-1E610B64F400",
"ServiceDisplayName": "Service Bus",
"ServiceInstanceDisplayName": null,
"ConfigState": 0,
"QuotaSyncState": 2,
"Settings": [
]
}
],
"SubscriptionCount": 0,
"MaxSubscriptionsPerAccount": 1,
"AddOnReferences": [
],
"AddOns": [
],
"InvitationCode": null,
"Price": null
},
"EntityParentId": null,
"NotificationEventTimeCreated": "2013-07-31T23:56:20.05"
}
]
Para obter mais informações sobre a API REST de Uso disponível, consulte Windows Referência de API REST de Uso do Serviço de Uso do Azure Pack.
Processando eventos de uso
Para acessar dados de evento de uso, use o objeto UsageEvent (Objeto de Medição de Uso) retornado pela API REST do Serviço de Uso. Notificações de evento enviadas ao adaptador de cobrança aderem ao tipo – UsageEvent (Objeto de Medição de Uso)<T> , no qual T é substituído por um dos objetos a seguir.
Planejar
PlanAddon
AdminSubscription
ResourceProviderReference
PlanAddonReference
O objeto UsageEvent contém informações sobre a entidade de evento, como Plano e Assinatura, o tipo de operação, como criação ou exclusão, e o estado atual da operação. A tabela a seguir descreve quais ações executar em um adaptador de cobrança para cada estado de combinação:
Evento/operação |
Criar (POST) |
Atualização (PUT) |
Excluir |
---|---|---|---|
Planos |
Processar todos os eventos |
Ignorar |
Ignorar (manual) |
Planejar complementos |
Processar todos os eventos |
Ignorar |
Ignorar (manual) |
Serviços de Plano |
Processar todos os eventos |
Ignorar |
Ignorar (manual) |
Complementos |
Processar todos os eventos |
Ignorar |
Ignorar (manual) |
Serviços de Complemento |
Processar todos os eventos |
Ignorar |
Ignorar (manual) |
Assinaturas |
processar eventos "Reconhecidos" |
Processar eventos "Aprovação Pendente" e "Reconhecidos" |
Processar eventos "Reconhecidos" |
Complementos de assinaturas |
processar eventos "Reconhecidos", incluindo eventos "duplicados" * |
Ignorar |
Processar eventos "Reconhecidos" |
As propriedades UseEvent significativas para processar a tabela acima são:
Propriedade |
Descrição |
||||||||||
---|---|---|---|---|---|---|---|---|---|---|---|
Entidade |
Contém o objeto em que está sendo operado. Por exemplo, AdminSubscription (objeto Administrador) para uma assinatura. |
||||||||||
Método |
O tipo de operação, como POST, PUT ou DELETE. |
||||||||||
Estado |
O estado atual da operação.
|
Eventos duplicados podem ocorrer para algumas das operações acima. Por exemplo, um evento "excluir um plano" pode ocorrer duas vezes seguidas com os mesmos dados, pois a operação pode falhar. Para o evento "criar suplemento de assinatura", um locatário tem a capacidade de comprar o mesmo complemento várias vezes (se ele estiver configurado dessa forma) para que cada evento de criação seja processado de modo que resulte na criação de uma nova entidade no Sistema de Cobrança. Para todas as outras operações de criação, as criações duplicadas não devem ser criadas no Sistema de Cobrança (ou seja, se a entidade já existir, não criar outra) e elas poderão ser ignoradas com segurança.
Mapeamento de entidade entre Windows pacote do Azure e um sistema de cobrança
O adaptador de cobrança deve criar entidades no Sistema de Cobrança com nomes que correspondam ao identificador enviado do Windows Azure Pack. Dessa forma, um administrador pode correlacionar quais entidades no Windows Azure Pack correspondem a quais entidades no Sistema de Cobrança. Se o Sistema de Cobrança não der suporte a isso, o adaptador de cobrança precisará manter as informações de mapeamento para traduzir os identificadores usados pelo Windows Pacote do Azure para os identificadores usados pelo sistema de cobrança. Por esse motivo, um adaptador de cobrança deve ter algum mecanismo que exponha essas informações de mapeamento a um administrador de maneira segura, para que quaisquer discrepâncias ou incertezas possam ser resolvidas.
Manipulando assinaturas
Os eventos de assinatura são criados nas seguintes circunstâncias:
Quando uma assinatura é ativada ou suspensa.
Ao migrar uma assinatura.
Suspensão de assinatura
Importante
A suspensão da assinatura, conforme descrito aqui, não estará disponível até a próxima versão de atualização do Windows Azure Pack. No build rtm atual, a suspensão e a ativação da assinatura não são detectáveis por meio dessa interface. Haverá eventos de atualização de assinatura que não podem ser acionáveis da perspectiva do sistema de cobrança e devem ser ignorados.
Se uma assinatura for suspensa no Windows Azure Pack, permitindo que um locatário provisione novos recursos ou acesse os existentes usando a assinatura suspensa, essa alteração será propagada para o Sistema de Cobrança por meio de um evento de atualização de assinatura. O objeto de assinatura , AdminSubscription (objeto Administrator), tem uma propriedade de estado que indica se a assinatura está ativa ou suspensa. Se um administrador suspender a assinatura de um usuário, ele deverá tomar as providências apropriadas em seu Sistema de Cobrança para evitar cobranças inadequadas ao usuário. Observe que os recursos existentes de um usuário, como bancos de dados, sites e VMs, não são excluídos; somente o acesso do locatário a eles é removido. Além disso, como os usuários podem ter várias assinaturas, é possível que uma das assinaturas de um usuário possa ser suspensa enquanto o restante permanecer ativo. Uma suspensão no nível do usuário não deve ocorrer no Sistema de Cobrança, a menos que todas as assinaturas no Windows Azure Pack associado a esse usuário tenham sido suspensas.
Migração de assinatura
Quando uma migração de assinatura é iniciada no Windows Azure Pack, um evento será exposto na API REST do Serviço de Uso como um evento de atualização de assinatura que contém o identificador de plano do novo plano que as referências de assinatura fazem. Para detectar isso, um adaptador de cobrança precisará controlar o Identificador de plano WAP de cada assinatura para que ele possa detectar essa alteração e tomar as medidas apropriadas no Sistema de Cobrança. Além disso, todos os complementos de assinatura que foram anteriormente associados à assinatura migrada precisam ser excluídos no Sistema de Cobrança; esses complementos são removidos no Windows Azure Pack e seus aumentos de cota são integrados às cotas do novo plano.
Consulte Também
Windows referência da API REST de Uso do Serviço de Uso do Azure Pack