2017-10-05 2 views
-1

nous travaillons sur un projet autonome Java 8, et nous devons extraire un journal de requête d'une autre application (un .exe), nous utilisions le traçage ODBC pour obtenir les journaux (manuellement pour chaque exécution), mais maintenant nous devons les obtenir automatiquement (les autres requêtes d'application varient en fonction d'un .txt que nous éditons pendant l'exécution).Comment démarrer le traçage ODBC sans utiliser l'Administrateur de sources de données?

Nous avons besoin de savoir s'il existe un moyen de lancer le traçage odbc en utilisant le code java, ou avec le code Runtime (avec cmd). Quel genre d'alternatives nous avons?

Répondre

1

La définition de la valeur de clé Trace dans le registre doit commencer à tracer. Assurez-vous de l'éteindre quand vous n'en avez pas besoin. Voici un script PowerShell pour le faire.

Push-Location 
Set-Location HKCU:\Software\ODBC\ODBC.INI\ODBC 
Set-ItemProperty . Trace "1" 
# Set-ItemProperty . TraceDll "C:\WINDOWS\system32\odbctrac.dll" 
# Set-ItemProperty . TraceFile "$Env:USERPROFILE\SQL.LOG" 
Pop-Location 

S'il doit être exécuté à partir d'un shell cmd.exe, placez le script dans traceon.ps1 et utilisez la commande suivante. Si vous avez déjà configuré votre machine pour pouvoir exécuter des scripts PowerShell, le -ExecutionPolicy Bypass n'est pas nécessaire.

powershell -NoProfile -ExecutionPolicy Bypass -File traceon.ps1