Criar uma Extensão Métrica

Você pode criar Extensões de Métrica para aproveitar o Database Management Diagnostics & Management como a ferramenta de monitoramento central para seus Bancos de Dados Gerenciados.

Para criar uma Extensão Métrica:

  1. Acesse a console do Oracle Cloud Infrastructure.
  2. Abra o menu de navegação, clique em Observabilidade e Gerenciamento. Em Database Management, clique em Administração.
  3. No painel esquerdo, clique em Extensões de Métricas e selecione um compartimento na lista drop-down Compartimento. A Extensão da Métrica deve ser criada no compartimento no qual o banco de dados reside ou é monitorado.
  4. Clique em Criar Extensão Métrica.
  5. No painel Criar Extensão Métrica:
    1. Forneça as seguintes propriedades da Extensão de Métrica:
      1. Nome: Digite um nome para a Extensão Métrica. O nome da Extensão da Métrica é prefixado automaticamente com ME_.
      2. Nome para exibição: Informe um nome para exibição da Extensão da Métrica, se for diferente do nome. O Nome para exibição pode ter espaços e números.
      3. Descrição: Opcionalmente, informe uma descrição para a Extensão Métrica.
    2. Forneça propriedades do método de coleta para especificar o tipo de recurso do banco de dados, como CDB, PDB ou não CDB para o qual a Extensão Métrica está sendo criada e outras propriedades:
      1. Tipo de recurso: Selecione o tipo de recurso do banco de dados para o qual você está criando uma Extensão de Métrica.
      2. Método de coleta: Selecione o método de coleta SQL para executar consultas SQL personalizadas em Bancos de Dados Gerenciados, retornando resultados em uma tabela de métricas.
      3. Frequência de coleta: Selecione opções para especificar com que frequência a Extensão da Métrica deve ser coletada.
      4. Consulta SQL: Informe a consulta SQL. Por exemplo:
        select a.ename, (select count(*) from emp p where p.mgr=a.empno) directs from emp a

        As instruções PL/SQL também são suportadas e, se usadas, as propriedades Out parameter position e Out parameter type devem ser preenchidas. As variáveis de bind podem ser especificadas para a consulta SQL usando propriedades de Parâmetro de entrada.

        Selecione Fazer upload do arquivo acima do campo Consulta SQL para selecionar ou arrastar e soltar o script SQL para executar e fornecer as propriedades relevantes do parâmetro de entrada/saída.

      5. No parâmetro: Opcionalmente, informe a variável de bind se estiver usando a opção Consulta SQL ou os parâmetros de entrada se estiver usando a opção Script SQL.
        Observação

        O Parâmetro de entrada suporta o uso do espaço reservado da propriedade da instância, que pode ser usado para substituir o espaço reservado pelo valor real da propriedade da instância do Banco de Dados Gerenciado para o qual a métrica está sendo coletada. Por exemplo, para oracle_psft, db_service_name é uma propriedade de instância. Ele pode ser informado como um valor No parâmetro dentro de um par de símbolos % (porcentagem), %db_service_name%.
      6. Posição do parâmetro de saída: Opcionalmente, informe o número da posição do parâmetro de saída.
      7. Tipo de parâmetro de saída: Opcionalmente, selecione o tipo de parâmetro de saída. Esse campo só será ativado se o número da posição do parâmetro de saída for especificado no campo Out parameter position.
    3. Forneça as seguintes propriedades de métrica e dimensão:
      1. Nome: Digite o nome da métrica ou dimensão em PascalCase. Por exemplo, CpuUtilization e TotalDatabaseSize.
        Observação

        As métricas em uma Extensão de Métrica com o status de rascunho podem ter os mesmos nomes para o mesmo tipo de recurso, mas não quando a Extensão de Métrica é publicada. Se um nome de métrica específico para um tipo de recurso já for utilizado e for usado em uma Extensão de Métrica publicada, o mesmo não poderá ser usado por outra métrica para o mesmo tipo de recurso. Por exemplo, se houver uma Extensão de Métrica publicada ME_FirstMetricExtension para um tipo de recurso específico e ela tiver uma métrica chamada MetricFirst, você não poderá publicar outra Extensão de Métrica, ME_SecondMetricExtension, para o mesmo tipo de recurso com uma métrica também chamada MetricFirst.

        Essa restrição não se aplica a métricas e dimensões ocultas.

      2. Nome para exibição: Opcionalmente, informe um nome para a métrica ou dimensão, se for diferente do nome. O Nome para exibição pode ter espaços e números.
      3. É dimensão?: Selecione Sim se estiver definindo uma dimensão de métrica e Não se estiver definindo uma métrica.

        Uma dimensão é um qualificador para uma métrica e deve ser um valor exclusivo para cada linha nos resultados da coleta de métricas. Por exemplo, uma métrica pode ser a porcentagem do espaço de armazenamento utilizado e a dimensão é o nome do sistema de arquivos.

      4. Está oculto?: Selecione Sim se a métrica for usada apenas em expressões de computação, o que significa que a métrica é usada apenas como um valor para calcular outra métrica ou não é necessário enviá-la ao serviço Oracle Cloud Infrastructure Monitoring. Caso contrário, selecione Não.
      5. Tipo de valor: Selecione o tipo de valor. Todas as métricas não ocultas devem ser numéricas; uma métrica ou dimensão oculta pode ser String ou Number.
      6. Unidade: Opcionalmente, informe a unidade associada à métrica. Dependendo da métrica, as unidades possíveis podem ser latência em segundos, milissegundos, microssegundos, minutos ou frequência em Hertz ou porcentagem. Este campo só está ativado para métricas e está acinzentado para dimensões.
      7. Categoria: Selecione o tipo de dados de métrica que a métrica está coletando: Disponibilidade, Capacidade, Carregar, Utilização. Este campo só é ativado para métricas que não estão ocultas e estão acinzentadas para dimensões e métricas que estão ocultas.
      8. Expressão de computação: Opcionalmente, informe expressões de computação para calcular o valor de uma métrica com base em operações matemáticas ou lógicas executadas em outras métricas ou dimensões dentro da mesma Extensão de Métrica. As expressões de computação exigem que pelo menos uma outra métrica seja definida primeiro e só podem incluir as outras métricas que já foram definidas na Extensão da Métrica. Para obter detalhes adicionais, consulte Expressões de computação.
      9. Adicionar outra métrica/dimensão: Clique para adicionar outra métrica ou dimensão à Extensão da Métrica.
  6. Clique em uma das seguintes opções para criar a Extensão Métrica:
    • Criar e testar: Clique para testar a Extensão de Métrica em um ou mais Bancos de Dados Gerenciados e verificar se os valores retornados estão corretos. Com base nos valores retornados, você pode continuar editando e testando de maneira iterativa.
      Observação

      Ao testar uma Extensão de Métrica, o Management Agent é reiniciado. É recomendável testar Extensões de Métrica em bancos de dados que não são de produção.
    • Criar: Clique para salvar a definição da Extensão de Métrica e testar em Bancos de Dados Gerenciados posteriormente.

Exemplo de Extensão Métrica

Veja um exemplo que lista e descreve as propriedades da Extensão de Métrica para um recurso não CDB, que captura o Tempo de Espera para diferentes classes de espera usando o método de coleta SQL:

Propriedades da Extensão de Métrica

Nome da Propriedade Valor da Propriedade
Nome ME_GetWaitTime
Nome para exibição Obter Tempo de Espera
Descrição Uma Extensão de Métrica para um recurso não CDB que captura o Tempo de Espera para diferentes classes de espera.

Propriedades do método de coleta

Nome da Propriedade Valor da Propriedade
Tipo de recurso Banco de Dados Não Contêiner
Método de coleta SQL
Frequência de coleta 60 minutos
Consulta SQL
WITH wait_stats AS (
SELECT
inst_id,
wait_class,
time_waited_fg
FROM
TABLE ( gv$(CURSOR(
SELECT
to_number(userenv('INSTANCE')) AS inst_id,
wait_class,
time_waited_fg / 100 AS time_waited_fg
FROM
v$system_wait_class
WHERE
wait_class <> 'Idle'
)) )
), inst_list AS (
SELECT
instance_number,
instance_name,
host_name
FROM
TABLE ( gv$(CURSOR(
SELECT
instance_number,
instance_name,
host_name
FROM
v$instance
)) )
)
SELECT
inst.instance_number instance_number,
inst.instance_name instance_name,
inst.host_name host_name,
ws.wait_class wait_class,
ws.time_waited_fg time_waited_fg
FROM
wait_stats ws,
inst_list inst
WHERE
inst.instance_number = ws.inst_id

Métricas ou Dimensões

Métrica ou Dimensão Propriedades da Métrica ou da Dimensão
InstanceNumber
  • Tipo de valor: Número
  • É dimensão?: Sim
  • Está oculto?: Não
InstanceName
  • Tipo de valor: String
  • É dimensão?: Sim
  • Está oculto?: Não
HostName
  • Tipo de valor: String
  • É dimensão?: Sim
  • Está oculto?: Não
WaitClass
  • Tipo de valor: String
  • É dimensão?: Sim
  • Está oculto?: Não
TimeWaitedSeconds
  • Tipo de valor: Número
  • É uma dimensão?: Não
  • Está oculto?: Não
  • Unidade: Segundos