Configurar Monitoramento de Instância de Banco de Dados

O Oracle Logging Analytics pode extrair registros de instância de banco de dados com base na consulta SQL que você fornece na configuração de origem de log.

Para obter os tipos de bancos de dados suportados, origens de log definidas pela Oracle disponíveis e instruções específicas desses bancos de dados, consulte:
Observação

Para o RAC (Oracle Real Application Clusters), em que há várias instâncias de banco de dados apontando para o mesmo armazenamento de banco de dados, use o tipo de entidade Oracle Database em vez do Oracle Database Instance. Instale um agente remoto que possa acessar o banco de dados usando o IP do SCAN. Não configure agentes/agentes para executar consultas SQL em instâncias de banco de dados individuais.

Pré-requisitos

Verifique se a conexão do banco de dados funciona do host do agente para o banco de dados. Se o banco de dados e o agente estiverem no mesmo host, use o comando sqlplus, tnsping ou trcroute para testar a conectividade com o banco de dados. Consulte Testing Connections no Database Net Services Administrator's Guide.

Se o banco de dados e o agente não estiverem no mesmo host, execute as seguintes etapas no host do agente:

  • sqlplus (se instalado no agente)
  • Faça ping do seu agente para o banco de dados. Isso deve funcionar a menos que os firewalls bloqueiem o ping. Se o ping for bloqueado, então:
    • telnet para o seu servidor de banco de dados com a porta do banco de dados para verificar se o listener está aceitando a conexão; por exemplo, telnet <database_server_hostname> 1521.

Fluxo Geral para Coleta de Logs de Bancos de Dados

Veja a seguir as tarefas de alto nível para coletar informações de log armazenadas em um banco de dados:

Oracle Database

O Oracle Database inclui

  • Banco de Dados Plugável (PDB), Banco de Dados Contêiner Multitenant (CDB) e Contêiner de Aplicativos
  • Instância do Oracle Database Instance
  • RAC (Oracle Real Application Clusters)
  • Oracle Autonomous Database
    • Autonomous Data Warehouse (ADW)
    • Autonomous Transaction Processing (ATP)

    Para obter um exemplo de como coletar logs de tabelas ou views no Oracle Autonomous Database, consulte Coletar Logs de Tabelas ou Views no Oracle Autonomous Database (Ícone Tutorial Tutorial ).

O Oracle Logging Analytics fornece um grande conjunto de origens de log definidas pela Oracle do tipo Banco de Dados para o Oracle Database:

Origem do Log Tipo de Entidade

AVDF Alert in Oracle Database

Autonomous JSON Database, Oracle Database Instance, Autonomous Database com o Oracle APEX Application Development, Autonomous Data Warehouse, Oracle Database, Autonomous Transaction Processing

AVDF Event in Oracle Database

Oracle Database Instance, Autonomous Data Warehouse, Oracle Database, Autonomous JSON Database, Autonomous Database com o Oracle APEX Application Development, Autonomous Transaction Processing

Identity and Access Management Audit Database

Oracle Database Instance, Autonomous Transaction Processing, Autonomous JSON Database, Autonomous Database com o Oracle APEX Application Development, Oracle Database, Autonomous Data Warehouse

Oracle DB Audit Log Source Stored in Database

Autonomous Transaction Processing, Oracle Database Instance, Autonomous Data Warehouse, Autonomous JSON Database, Autonomous Database com o Oracle APEX Application Development, Oracle Database

Oracle EBS Transaction Logs

Autonomous Database com o Oracle APEX Application Development, Oracle Pluggable Database, Autonomous Transaction Processing, Oracle Database Instance, Autonomous JSON Database, Oracle Database, Autonomous Data Warehouse

Symantec DLP System Events

Autonomous JSON Database, Oracle Database, Autonomous Transaction Processing, Autonomous Database com o Oracle APEX Application Development, Oracle Database Instance, Autonomous Data Warehouse

Oracle Unified DB Audit Log Source Stored in Database 12.1

Autonomous JSON Database, Oracle Database, Oracle Pluggable Database, Autonomous Data Warehouse, Oracle Database Instance, Autonomous Transaction Processing, Autonomous Database com o Oracle APEX Application Development

Oracle Unified DB Audit Log Source Stored in Database 12.2

Autonomous JSON Database, Oracle Database Instance, Autonomous Database com o Oracle APEX Application Development, Oracle Pluggable Database, Oracle Database, Autonomous Data Warehouse, Autonomous Transaction Processing

Logs de Alerta do Banco de Dados Armazenados no Banco de Dados

Autonomous JSON Database, Oracle Pluggable Database, Autonomous Transaction Processing, Autonomous Data Warehouse, Autonomous Database com o Oracle APEX Application Development, Oracle Database Instance, Oracle Database

Logs de Rastreamento de Banco de Dados armazenados no Banco de Dados

Oracle Database, Autonomous Database com o Oracle APEX Application Development, Autonomous Data Warehouse, Oracle Database Instance, Autonomous JSON Database, Oracle Pluggable Database, Autonomous Transaction Processing

Logs de Serviço do Oracle Database Health Monitor

Autonomous Transaction Processing, Oracle Database, Autonomous Database com o Oracle APEX Application Development, Oracle Database Instance, Autonomous JSON Database, Autonomous Data Warehouse

Logs do Dataguard do Oracle Database

Autonomous Transaction Processing, Autonomous JSON Database, Autonomous Data Warehouse, Oracle Database, Oracle Database Instance, Autonomous Database com o Oracle APEX Application Development

Additionally, more oracle-defined log sources of the type File are available for Oracle Database such as Database Alert Logs, Database Audit Logs, Database Audit XML Logs, Database Incident Dump Files, Database Listener Alert Logs, Database Listener Trace Logs, Database Trace Logs, and Database XML Alert Logs.

Microsoft SQL Server Database Instance

Observação

  • Para uma coleta bem-sucedida de logs da origem do Banco de Dados do Microsoft SQL Server, certifique-se de que a versão do Management Agent seja 210403.1350 ou mais recente.
  • O monitoramento da Instância do Banco de Dados do Microsoft SQL Server só é suportado com a instalação do Management Agent stand-alone. Não há suporte para ele com o plug-in do Management Agent no Oracle Cloud Agent.

As seguintes origens de log definidas pela Oracle do tipo Banco de Dados estão disponíveis para monitorar a Instância do Banco de Dados do Microsoft SQL Server:

  • McAfee Ponto Final da Prevenção de Perda de Dados
  • McAfee ePolicy Orquestrador

Além disso, mais origens de log definidas pela oracle do tipo Arquivo estão disponíveis para a Instância do Banco de Dados do Microsoft SQL Server, como Log de Erro do Microsoft SQL Server Agent e Origens de Log de Erro do Microsoft SQL Server.

Instância do MySQL Database

Observação

  • Para uma coleta de log bem-sucedida da origem do MySQL Database, certifique-se de que a versão do Agente de Gerenciamento seja 210205.0202 ou mais recente.
  • O monitoramento da Instância do MySQL Database só é suportado com a instalação do Management Agent stand-alone. Não há suporte para ele com o plug-in do Management Agent no Oracle Cloud Agent.

As seguintes origens de log definidas pela Oracle do tipo Banco de Dados estão disponíveis para monitorar a Instância do MySQL Database:

  • MySQL Logs de Erro Armazenados no Banco de Dados
  • MySQL General Log Source Stored in Database
  • MySQL Logs de Consulta Lenta Armazenados no Banco de Dados

Além disso, mais origens de log definidas pela oracle do tipo Arquivo estão disponíveis para a Instância do MySQL Database, como Logs XML de Auditoria do MySQL Database, MySQL Logs de Erro, MySQL Logs de Consulta Geral e MySQL Logs de Consulta Lenta.

Para executar uma coleta remota de uma instância do banco de dados MySQL, a seguinte configuração deve ser feita na instância do banco de dados:

  1. Para permitir o acesso de um host específico no qual o agente de gerenciamento está instalado:

    1. Crie a nova conta autenticada pela senha especificada:

      CREATE USER '<mysql_user>'@'<host_name>' IDENTIFIED BY '<password>';
    2. Designe privilégios READ para todos os bancos de dados ao usuário mysql_user no host host_name:

      GRANT SELECT ON *.* TO '<mysql_user>'@'<host_name>' WITH GRANT OPTION;
    3. Salve as atualizações nos privilégios do usuário executando o comando:

      FLUSH PRIVILEGES;
  2. Para permitir o acesso a um banco de dados específico de qualquer host:

    1. Conceda privilégios READ a mysql_user de qualquer host válido:

      GRANT SELECT ON <database_name>.* TO '<mysql_user>'@'%' WITH GRANT OPTION;
    2. Salve as atualizações nos privilégios do usuário executando o comando:

      FLUSH PRIVILEGES;

Banco de Dados PostgreSQL

Observação

  • Para obter uma coleta de logs bem-sucedida da origem do Banco de Dados PostgreSQL, instale o Management Agent versão 250121.1929 ou posterior no host do banco de dados.
  • O monitoramento do banco de dados PostgreSQL só é suportado com a instalação do Management Agent stand-alone. Não há suporte para ele no plug-in do Management Agent no Oracle Cloud Agent.

As seguintes origens de log definidas pelo sistema Oracle do tipo Arquivo estão disponíveis para monitorar o Banco de Dados PostgreSQL:

  • Logs de Serviço do OCI PostgreSQL
  • PostgreSQL Logs

Criar a Entidade de Banco de Dados.

Crie a entidade de banco de dados para fazer referência à instância de banco de dados e ativar a coleta de logs nela. Se você estiver usando o agente de gerenciamento para coletar logs, depois de instalar o agente de gerenciamento, volte aqui para configurar o monitoramento do agente para a entidade.

  1. Abra o menu de navegação e clique em Observabilidade e Gerenciamento. Em Logging Analytics, clique em Administração. A página Visão Geral da Administração é aberta.

  2. Os recursos de administração são listados no painel de navegação à esquerda em Recursos. Clique em Entidades.

  3. Verifique se o seletor de compartimento à esquerda indica que você está no compartimento desejado para essa nova entidade.

    Clique em Criar.

  4. Selecione um Tipo de Entidade que seja adequado à sua instância de banco de dados, por exemplo, o Oracle Database Instance.

    Forneça um Nome para a entidade.

  5. Selecione Compartimento do Agente de Gerenciamento no qual o agente está instalado e selecione o Agente de Gerenciamento a ser associado à entidade de banco de dados para que os logs possam ser coletados.

    Se preferir, você poderá criar a entidade primeiro, editá-la posteriormente e fornecer o OCID do agente de gerenciamento depois que o agente for instalado.

    Observação

    • O monitoramento da Instância do MySQL Database, do Banco de Dados do Microsoft SQL Server e do Banco de Dados PostgreSQL só é suportado com a instalação do Management Agent stand-alone. Não há suporte para ele no plug-in do Management Agent no Oracle Cloud Agent.

    • Use o Management Agent versão 210403.1350 ou posterior para instalar no host de banco de dados para garantir o suporte ao Banco de Dados do Microsoft SQL Server.

    • Para uma coleta de log bem-sucedida da origem da Instância do MySQL Database, certifique-se de que a versão do Agente de Gerenciamento seja 210205.0202 ou mais recente.

    • Use o Management Agent versão 250121.1929 ou posterior para instalar no host de banco de dados para garantir o suporte ao Banco de Dados PostgreSQL.

  6. Se sua instância do banco de dados tiver um ID do Recurso da Nuvem, forneça esse OCID. Se o OCID for fornecido e se o seu banco de dados estiver ativado para o Database Management, você poderá exibi-lo no Database Management com a ajuda da opção disponível no Log Explorer. Consulte Exibir Sua Entidade de Banco de Dados no Serviço Database Management.

  7. Para ingerir SQL, forneça as seguintes propriedades no caso de Oracle Database (para implantações RAC), Oracle Database Instance ou Banco de Dados Plugável Oracle:

    • port
    • hostname
    • sid ou service_name

      Se você fornecer os dois valores, o Logging Analytics usará service_name para ingerir SQL.

    Para a coleta de logs da Instância do Banco de Dados do Microsoft SQL Server, da origem do serviço MySQL Database e do Banco de Dados do PostgreSQL, forneça as seguintes propriedades:

    • database_name
    • host_name
    • port

    Se você pretende usar origens de log definidas pela Oracle para coletar logs de agentes de gerenciamento, é recomendável fornecer qualquer valor de parâmetro que já possa estar definido para o tipo de entidade escolhido. Se os valores de parâmetro não forem informados, quando você tentar associar a origem a essa entidade, haverá falha porque estão faltando os valores de parâmetro.

    Clique em Salvar.

Criar a Origem do Banco de Dados.

  1. Abra o menu de navegação e clique em Observabilidade e Gerenciamento. Em Logging Analytics, clique em Administração. A página Visão Geral da Administração é aberta.

  2. Os recursos de administração são listados no painel de navegação à esquerda em Recursos. Clique em Origens.

  3. Na página Origens, clique em Criar Origem.

    Isso exibe a caixa de diálogo Criar Origem.

  4. No campo Origem, digite o nome da origem.

  5. Na lista Tipo de Origem, selecione Banco de Dados.

  6. Clique em Tipo de Entidade e selecione o tipo de entidade necessário. Por exemplo, Oracle Database Instance, Oracle Pluggable Database, Microsoft SQL Server Database Instance ou MySQL Database Instance.

  7. Na guia Consultas de Banco de Dados, clique em Adicionar para especificar os detalhes da consulta SQL, com base na qual a instância do Oracle Logging Analytics coleta os logs da instância do banco de dados.

    Consulte Diretrizes de Consulta SQL.

  8. Clique em Configurar para exibir a caixa de diálogo Configurar Mapeamento de Coluna.

  9. Na caixa de diálogo Configurar Mapeamento de Coluna, mapeie os campos de SQL com os nomes que seriam exibidos nos registros de log reais. Para criar um novo campo para mapeamento, clique no ícone Ícone Adicionar.

    Especifique uma Coluna de Sequência. O valor desse campo deve determinar a sequência dos registros inseridos na tabela. Ele deve ter um valor incremental exclusivo. Se você não quiser que os campos determinem a sequência dos registros, poderá selecionar tempo de coleta de consulta SQL para usar o tempo de coleta como o tempo de entrada de log. Nesse caso, todos os registros de log são coletados novamente em cada ciclo de coleta.

    Observação

    O primeiro campo mapeado com um tipo de dados Timestamp é usado como timestamp do registro de log. Se nenhum campo estiver presente, a hora da coleta será usada como hora do registro de log.

    Quando os logs são coletados pela primeira vez após a criação da origem de log (coleta de log histórico):

    • Se qualquer campo da consulta SQL for mapeado para o campo Time, o valor desse campo será usado como referência para fazer upload dos registros de log dos 30 dias anteriores.

    • Se nenhum dos campos da consulta SQL for mapeado para o campo Time, será feito o upload de no máximo 10.000.000 de registros.

    Clique em Concluído.

  10. Repita a Etapa 6 até a Etapa 8 para adicionar várias consultas SQL.

  11. Selecione Ativado para cada consulta SQL e clique em Salvar.

Fornecer as Credenciais da Entidade de Banco de Dados

Para cada entidade usada para coletar os dados definidos na origem de log do Banco de Dados, informe as credenciais necessárias para que o agente se conecte à entidade e execute a consulta SQL. Essas credenciais precisam ser registradas em um armazenamento de credenciais mantido localmente pelo agente da nuvem. As credenciais são usadas pelo agente da nuvem para coletar os dados de log da entidade.
  1. Faça login no host no qual o agente de gerenciamento está instalado.

  2. Crie o arquivo de entrada JSON das credenciais do tipo DBCreds. Por exemplo, agent_dbcreds.json:

    cat agent_dbcreds.json
    {
        "source": "lacollector.la_database_sql",
        "name": "LCAgentDBCreds.<entity_name>",
          "type": "DBCreds",
        "usage": "LOGANALYTICS",
        "disabled": "false",
        "properties": [
            {
                "name": "DBUserName",
                "value": "CLEAR[username]"
            },
            {
                "name": "DBPassword",
                "value": "CLEAR[password]"
            },
            {
                "name": "DBRole",
                "value": "CLEAR[normal]"
            }
        ]
    }

    As seguintes propriedades devem ser fornecidas no arquivo de entrada como no exemplo anterior agent_dbcreds.json:

    • source : "lacollector.la_database_sql"
    • name : "LCAgentDBCreds.<entity_name>"

      entity_name é o valor do campo Nome informado durante a criação da entidade.

    • type : "DBCreds"
    • usage : "LOGANALYTICS"
    • properties : nome do usuário, senha e atribuição. A função é opcional.
  3. Use o script credential_mgmt.sh com a operação upsertCredentials para adicionar as credenciais ao armazenamento de credenciais do agente:

    Sintaxe:

    $cat <input_file> | sudo -u mgmt_agent /opt/oracle/mgmt_agent/agent_inst/bin/credential_mgmt.sh -o upsertCredentials -s <service_name>

    No comando anterior:

    • Arquivo de entrada: O arquivo JSON de entrada com os parâmetros de credencial, por exemplo, agent_dbcreds.json.
    • Nome do serviço: Use logan como nome do plug-in do Oracle Logging Analytics implantado no agente.

    Usando os valores de exemplo dos dois parâmetros, o comando seria:

    $cat agent_dbcreds.json | sudo -u mgmt_agent /opt/oracle/mgmt_agent/agent_inst/bin/credential_mgmt.sh -o upsertCredentials -s logan

    Após a adição bem-sucedida das credenciais, você poderá excluir o arquivo JSON de entrada.

    Para obter mais informações sobre o gerenciamento de credenciais no armazenamento de credenciais do agente de gerenciamento, consulte Credenciais da Origem do Agente de Gerenciamento na Documentação do Agente de Gerenciamento.

Exibir Sua Entidade de Banco de Dados no Serviço Database Management

Se seu banco de dados estiver ativado para o Database Management e tiver um OCID de recurso de nuvem associado a ele, o Logging Analytics permitirá que você o exiba no Database Management com a ajuda da opção disponível no Log Explorer.

Para ativar o Database Management para seu banco de dados, consulte Documentação do OCI: Ativar o Database Management.

  1. Abra o menu de navegação e clique em Observabilidade e Gerenciamento. Em Logging Analytics, clique em Explorador de Logs.

  2. Opcionalmente, restrinja a pesquisa de logs por tipo de entidade, que deve ser um dos tipos de banco de dados. No painel Campos, na seção Fixado, clique em Tipo de Entidade. Na caixa de diálogo Tipo de Entidade, selecione os tipos de entidade necessários, por exemplo, Oracle Database Instance, e clique em Aplicar.

  3. No painel Visualizar, selecione uma das opções de visualização que exibem a tabela de registros, por exemplo, Registros com Histograma.

    Em seguida, os logs são exibidos nos Registros com visualização do Histograma. Na tabela de registros, em cada registro de log, as informações sobre o nome da entidade, a origem do log e o tipo de entidade são exibidas.

  4. Clique no nome da entidade. No menu, clique em Exibir no Database Management.

Uma nova guia com a console do serviço Database Management no contexto do seu banco de dados é exibida.