Rastreamento do acesso aos dados no Linux e no macOS

Baixar driver ODBC

O Gerenciador de driver unixODBC no macOS e Linux dá suporte ao rastreamento de entrada de chamada à API do ODBC e à saída do Driver ODBC para SQL Server.

Para rastrear o comportamento do ODBC do aplicativo, edite a seção [ODBC] do arquivo odbcinst.ini. Defina os valores Trace=Yes e TraceFile para o caminho do arquivo que conterá a saída do rastreamento. Por exemplo:

[ODBC]
Trace=Yes
TraceFile=/home/myappuser/odbctrace.log

Você também pode usar /dev/stdout ou qualquer outro nome do dispositivo como o destino de envio da saída do rastreamento, em vez de enviá-la para um arquivo persistente. Com as configurações anteriores, toda vez que um aplicativo carrega o gerenciador do driver unixODBC, ele registra todas as chamadas à API do ODBC feitas no arquivo de saída.

Depois de concluir o rastreamento do aplicativo, remova Trace=Yes do arquivo odbcinst.ini para evitar prejudicar o desempenho de rastreamento e verifique se os arquivos de rastreamento desnecessários foram removidos.

O rastreamento se aplica a todos os aplicativos que usam o driver no odbcinst.ini. Para não rastrear todos os aplicativos (por exemplo, para evitar a divulgação de informações confidenciais por usuário), você pode rastrear uma instância de aplicativo individual. Forneça a instância do local de um odbcinst.ini privado, usando a variável de ambiente ODBCSYSINI. Por exemplo:

$ ODBCSYSINI=/home/myappuser myapp

Nesse caso, você pode adicionar Trace=Yes à seção [ODBC Driver 17 for SQL Server] de /home/myappuser/odbcinst.ini.

Determinar qual arquivo o driver está usando

Os drivers ODBC para Linux e macOS não sabem qual arquivo odbc.ini está em uso, nem o caminho para o arquivo odbc.ini. As informações sobre qual arquivo odbc.ini está em uso estão disponíveis nas ferramentas unixODBC odbc_config e odbcinst. Você também pode obter essas informações na documentação do gerenciador de driver do unixODBC.

Por exemplo, o seguinte comando imprime o local dos arquivos odbc.ini do sistema e do usuário que contêm, respectivamente, os DSNs (nomes da fonte de dados) do sistema e do usuário:

$ odbcinst -j
unixODBC 2.3.1
DRIVERS............: /etc/odbcinst.ini
SYSTEM DATA SOURCES: /etc/odbc.ini
FILE DATA SOURCES..: /etc/ODBCDataSources
USER DATA SOURCES..: /home/odbcuser/.odbc.ini`
SQLULEN Size.......: 8
SQLLEN Size........: 8
SQLSETPOSIROW Size.: 8

Os DSNs de usuário só estão disponíveis para um usuário específico. Os DSNs de usuário são armazenados em um arquivo no diretório base ou em um subdiretório do usuário. OsDSNs de sistema estão disponíveis para cada usuário no sistema, mas só podem ser adicionados, modificados e removidos por um administrador do sistema. Se um usuário tiver um DSN de usuário com o mesmo nome que um DSN de sistema, o DSN de usuário será usado nas conexões por esse usuário. Para saber mais, confira a documentação do unixODBC.

Consulte também