O Storeview permite executar consultas JOIN e analisar dados de múltiplos logstores. Este tópico descreve como criar um Storeview para Logstore e usar seus recursos de consulta e análise.
Criar um Storeview para Logstore
Pré-requisitos
Crie um projeto e um logstore Standard e colete logs. Para mais informações, consulte Gerenciar projetos, Criar um Logstore básico e Coleta de dados.
Procedimento
Faça login no console do Simple Log Service. Na lista Projects, clique em o projeto desejado.
No painel de navegação à esquerda, escolha . Em seguida, clique em Create Now ou no ícone
para criar um Log Data View.-
Na caixa de diálogo Create Storeview, insira o Storeview Name, adicione os logstores a associar e clique em OK. A criação do Storeview leva cerca de um minuto.
NotaCada projeto do Simple Log Service suporta no máximo 10 Log Data View.
Cada Log Data View aceita associação com até 50 logstores.
Todos os logstores de um Log Data View devem pertencer à mesma conta Alibaba Cloud.
Recurso de consulta
O Log Data View suporta consultas entre vários logstores. Por exemplo, se um Log Data View estiver associado aos logstores LogStore-1 e LogStore-2, e ambos contiverem o campo a, a consulta * | select a from log where a > 1 retornará logs de ambos nos quais o campo a atenda à condição a > 1.
Se um Log Data View contiver dois logstores com conteúdo idêntico, uma consulta por palavra-chave retornará todos os resultados correspondentes de ambos. Use o campo de tag para identificar o logstore de origem de cada entrada.
Nos detalhes dos resultados da consulta, use o campo __tag__:__logstore__ para identificar o logstore de origem. Por exemplo, o valor logstore-2 indica que a entrada veio do logstore-2.
Recurso de análise
Um Data View permite agregar análises de múltiplos logstores. Por exemplo, se um Storeview estiver associado ao logstore-1 e ao logstore-2, e ambos possuírem o campo a, a consulta * | select a, count(1) group by a retornará a contagem total para cada valor do campo a, agregando dados dos dois logstores.
A análise de agregação exige chaves de campo consistentes. Quando os logstores têm conteúdo semelhante, mas nomes de campos diferentes, use a pré-definição para filtrar dados ou renomear campos. Por exemplo, para agregar o campo a do logstore-1 e o campo b do logstore-2, renomeie primeiro o campo b para a.
Ao criar um Log Data View, aplique uma pré-definição SPL aos logstores associados. A pré-definição suporta apenas as palavras-chave extend e where. Esse recurso filtra dados ou resolve inconsistências de nomenclatura, facilitando a análise agregada. Por exemplo, para agregar o campo a do logstore-1 e o campo b do logstore-2, use uma expressão como extend a = b para alinhar os nomes dos campos.
Considere os seguintes cenários:
-
Cenário 1:
Um Log Data View está associado a diferentes logstores do mesmo serviço, com conteúdo de log idêntico. Nesse caso, verifique se as configurações de índice dos logstores são compatíveis. Garanta, por exemplo, que todos usem indexação de texto completo ou que os campos necessários tenham a mesma configuração de índice. Depois, adicione os logstores desejados ao Log Data View.
Após criar o Log Data View, use SQL para análise. Uma análise dos diferentes valores de
statusnos últimos 15 minutos agregará logs de ambos os logstores.Por exemplo, a instrução SQL
* | SELECT status, count(*) AS PV GROUP BY statusmostra 4 PV para o status 200 e 8 PV para o status 302. -
Cenário 2:
Um Log Data View está associado a diferentes logstores do mesmo serviço, mas alguns campos de log possuem nomes distintos. Nessa situação, use a pré-definição SPL para criar um novo campo com nome consistente. Por exemplo, use a instrução SPL
*|extend request_method = methodpara renomear o campomethodpararequest_method. Clique em Preview Data para visualizar os resultados da pré-definição.Em seguida, use o campo
request_methodnas consultas e análises.Por exemplo, insira a instrução SQL
* | SELECT request_method, count(*) GROUP BY request_method order by request_method descno editor de consultas. Clique em Query/Analysis e visualize o resultado na aba Statistics Chart. O resultado mostra 4 requisições GET e 1 requisição nula.
Exemplos de consulta e análise
|
Cenário |
Consulta pré-definida |
Instrução de consulta |
Resultado |
|||
|
logstore-1 e logstore-2 contêm o campo |
Nenhuma |
|
Retorna linhas que contêm |
|||
|
logstore-1 e logstore-2 contêm os campos |
Nenhuma |
|
select a where b=1` |
Retorna todos os valores do campo |
||
|
logstore-1 e logstore-2 contêm os campos |
|
|
select a` |
Retorna todos os valores do campo |
||
|
logstore-1 e logstore-2 contêm os campos |
|
where a>1` |
|
select a` |
Retorna valores do campo |
|
|
logstore-1 e logstore-2 contêm os campos |
|
where a>1 |
extend y=upper(a)` |
|
select *` |
Retorna todos os campos que atendem às condições, incluindo o novo campo |
|
logstore-1 contém os campos |
Nenhuma |
|
Retorna os campos |
|||
|
logstore-1 possui campos de índice |
Nenhuma |
|
select a, count(1) group by a` |
Como o campo |
Tratamento de inconsistências
Uma consulta ainda pode retornar resultados mesmo que o mesmo campo tenha tipos de dados diferentes entre os logstores.
Se uma consulta de análise envolver um campo existente apenas em alguns dos logstores associados, o retorno incluirá resultados somente desses logstores.
Uma instrução de análise falhará e retornará um erro caso envolva campos com configurações de índice inconsistentes entre os logstores.
Próximos passos
Consultar um Storeview
No painel de navegação à esquerda, escolha para visualizar os Storeviews para Logstore criados.
Atualizar um Storeview
Na lista de Storeviews, passe o mouse sobre o Storeview desejado, clique em o ícone
e clique em Modify.-
No painel Update Storeview, modifique os logstores associados e clique em OK.
Na seção Stores, selecione o projeto e o logstore (logstore ou SQL store) para cada store. Clique em + STORE para adicionar mais stores.
Excluir um Storeview
Na lista de Storeviews, passe o mouse sobre o Storeview desejado, clique em o ícone
e clique em Delete.
Documentos relacionados
Gerencie Storeviews usando as seguintes operações de API: