Criando visualizações
GROUP BY — você define métricas para agregar nas dimensões selecionadas.
Por exemplo, você pode criar um gráfico do número de erros (count()) agrupados por nome do serviço.
Nos exemplos abaixo, usamos o conjunto de dados remoto disponível em sql.clickhouse.com, descrito no guia “Remote Demo Dataset”. Você também pode reproduzir esses exemplos acessando play-clickstack.clickhouse.com.
Acesse o Chart Explorer
SelecioneChart Explorer no menu à esquerda.Criar visualização
No exemplo abaixo, criamos um gráfico da duração média das requisições ao longo do tempo por nome do serviço. Para isso, o usuário precisa especificar uma métrica, uma coluna (que pode ser uma expressão SQL) e um campo de agregação.Selecione o tipo de visualizaçãoLine/Bar no menu superior, seguido do conjunto de dados Traces (ou Demo Traces se estiver usando play-clickstack.clickhouse.com). Preencha os seguintes valores:- Metric:
Average - Column:
Duration/1000 - Where:
<empty> - Group By:
ServiceName - Alias:
Average Time
WHERE ou a sintaxe Lucene e definir o intervalo de tempo em que os eventos devem ser visualizados. Também há suporte para múltiplas séries.Por exemplo, filtre pelo serviço frontend adicionando o filtro ServiceName:"frontend". Adicione uma segunda série para a contagem de eventos ao longo do tempo com o alias Count clicando em Add Series.As visualizações podem ser criadas a partir de qualquer fonte de dados — métricas, traces ou logs. O ClickStack trata todos eles como eventos do tipo wide. Qualquer coluna numérica pode ser representada em gráfico ao longo do tempo, e colunas string, date ou numéricas podem ser usadas em agrupamentos.Essa abordagem unificada permite criar dashboards com diferentes tipos de telemetria usando um modelo consistente e flexível.
Criando dashboards
Acesse Dashboards
Selecione Dashboards no menu à esquerda. Em seguida, clique em New Dashboard para criar um dashboard temporário ou salvo.Criar uma visualização – tempo médio de requisição por serviço
SelecioneAdd New Tile para abrir o painel de criação de visualizações.Selecione o tipo de visualização Line/Bar no menu superior, seguido do conjunto de dados Traces (ou Demo Traces se estiver usando play-clickstack.clickhouse.com). Preencha os valores a seguir para criar um gráfico que mostre a duração média das requisições ao longo do tempo para cada nome de serviço:- Nome do gráfico:
Average duration by service - Métrica:
Average - Coluna:
Duration/1000 - Where:
<empty> - Agrupar por:
ServiceName - Alias:
Average Time
Save.Redimensione a visualização para ocupar toda a largura do dashboard.Crie uma visualização – eventos ao longo do tempo por serviço
SelecioneAdd New Tile para abrir o painel de criação de visualizações.Selecione o tipo de visualização Line/Bar no menu superior e, em seguida, o dataset Logs (ou Demo Logs, se estiver usando play-clickstack.clickhouse.com). Preencha os valores a seguir para criar um gráfico que mostre a contagem de eventos ao longo do tempo por nome de serviço:- Chart Name:
Event count by service - Metric:
Count of Events - Where:
<empty> - Group By:
ServiceName - Alias:
Count of events
Save.Redimensione a visualização para ocupar toda a largura do dashboard.Adicione um tile de mapa de calor para a duração do span
Tiles de mapa de calor mostram a contagem de eventos que caem em cada bucket de (tempo, valor) como uma grade colorida. Use um mapa de calor quando quiser ver a forma de uma distribuição ao longo do tempo, e não apenas a média ou um único percentil. Um mapa de calor de latência revela padrões bimodais de duração, agrupamentos na cauda lenta ou dispersões repentinas que um gráfico de linhas acabaria diluindo na média.Para adicionar um tile de mapa de calor:- Selecione
Add New Tile. - Escolha o tipo de visualização
Heatmapno menu superior. O menu suspenso de fonte de dados mostra apenas fontes cujo tipo de source éTraces. Fontes de logs, métricas e sessão são filtradas, pois mapas de calor precisam de uma coluna de duração de span que apenas fontes de traces fornecem. - Escolha qualquer uma das suas fontes de traces pelo nome. O nome em si é arbitrário; apenas o tipo importa.
- Value: a
Duration Expressionda fonte, escalonada para a unidade de exibição atual (por exemplo,(Duration)/1e6para converter a duração do span de cada evento de nanossegundos para milissegundos) - Count:
count()
- Defina um nome para o gráfico e use
Wherepara limitar o mapa de calor a um serviço específico ou a um conjunto de operações cujo desempenho você deseja observar. - Ajuste o intervalo de tempo para corresponder ao período de interesse. Intervalos mais amplos revelam mudanças na distribuição e padrões bimodais de latência que janelas mais curtas podem ocultar.
Run para visualizar o gráfico e, em seguida, em Save.O tile salvo é exibido como um mapa de calor no dashboard. Passe o cursor sobre qualquer célula para ver os limites do bucket e a contagem de eventos.Ir para Event Deltas
Clique em qualquer célula de um tile de mapa de calor exibido para abrir a ação View in Event Deltas.Ao selecioná-la, a visualização Event Deltas é aberta com a fonte de dados do tile, a cláusulaWhere e o intervalo de tempo mantidos. A partir daí, você pode examinar interativamente a mesma distribuição, segmentar por atributo para ver o que diferencia os spans lentos dos rápidos e inspecionar os spans individuais por trás de qualquer célula, sem precisar reconstruir a consulta manualmente.Filtro do painel
Filtros Lucene ou SQL, juntamente com o intervalo de tempo, podem ser aplicados ao painel e serão propagados automaticamente para todas as visualizações.Para demonstrar, aplique o filtro LuceneServiceName:"frontend" ao painel e altere o intervalo de tempo para abranger as Last 3 hours. Observe como as visualizações agora refletem apenas os dados do serviço frontend.O painel será salvo automaticamente. Para definir o nome do painel, selecione o título e altere-o antes de clicar em Save Name.Dashboards - edição de visualizações
Dashboard - listagem e busca
Dashboards - tags
- Organização: As tags aparecem na barra lateral esquerda, onde dashboards e pesquisas salvas são agrupados de acordo com as tags atribuídas
- Múltiplas tags: Você pode adicionar uma ou mais tags a um único item para melhorar a categorização
- Criação automática: Se você atribuir uma tag que ainda não existe, ela será criada automaticamente
- Gerenciamento simples: Você pode adicionar ou remover tags a qualquer momento para ajustar sua estrutura de organização
Filtros personalizados
Abra a caixa de diálogo Editar filtros
Abra um dashboard salvo e selecione Editar filtros na barra de ferramentas.Adicione um novo filtro
Clique em Adicionar novo filtro. Configure o filtro fornecendo um Nome, selecionando uma Fonte de dados e inserindo uma Expressão de filtro — uma coluna SQL ou expressão cujos valores distintos preencherão a lista suspensa. Clique em Salvar filtro.Por exemplo, para adicionar um filtro de serviço a dados de traces, useServiceName como expressão de filtro com a fonte de dados Traces. O “Filtro de valores da lista suspensa” é opcional e permite restringir quais valores aparecem na lista suspensa.O modal Filtros mostra todos os filtros configurados para o dashboard. Nele, você pode editar ou excluir filtros existentes, ou adicionar outros.Use o filtro
Feche o modal Filtros. O novo filtro suspenso aparece abaixo da barra de pesquisa. Clique nele para ver os valores disponíveis e selecione um deles para filtrar todas as visualizações do dashboard.(Opcional) Salve os valores do filtro como padrão
Para manter uma seleção de filtro como padrão do dashboard, escolha Salvar consulta e filtros como padrão no menu do dashboard. O dashboard sempre será aberto com os filtros selecionados aplicados. Para redefinir, selecione Remover consulta e filtros padrão no mesmo menu.Filtros personalizados em listas suspensas estão disponíveis em dashboards salvos. Para ver esse padrão em ação, consulte o dashboard do Kubernetes, que fornece filtros suspensos integrados para pod do Kubernetes, Implantação, nome do nó, Espaço de nomes e Cluster.
Drilldown para a Search
- Ver todos os eventos — navega até a página Search, mostrando todos os eventos da janela de tempo selecionada.
- Filtrar por grupo — navega até a página Search, filtrada por uma série específica.
Predefinições
Dashboard do ClickHouse
Acesso obrigatório às tabelas de sistemaEste dashboard consulta as tabelas de sistema do ClickHouse para expor as principais métricas. Os seguintes grants são necessários:
GRANT SHOW COLUMNS, SELECT(CurrentMetric_MemoryTracking, CurrentMetric_S3Requests, ProfileEvent_OSCPUVirtualTimeMicroseconds, ProfileEvent_OSReadChars, ProfileEvent_OSWriteChars, ProfileEvent_S3GetObject, ProfileEvent_S3ListObjects, ProfileEvent_S3PutObject, ProfileEvent_S3UploadPart, event_time) ON system.metric_logGRANT SHOW COLUMNS, SELECT(active, database, partition, rows, table) ON system.partsGRANT SHOW COLUMNS, SELECT(event_date, event_time, memory_usage, normalized_query_hash, query, query_duration_ms, query_kind, read_rows, tables, type, written_bytes, written_rows) ON system.query_logGRANT SHOW COLUMNS, SELECT(event_date, event_time, hostname, metric, value) ON system.transposed_metric_log