我正在尝试提取特定用户何时使用Bitvise日志登录到SFTP服务器。为了运行这些日志,我决定使用Log Parser。我写的查询有问题。
我开始使用Log Parser 2.2,并不断遇到有关重复属性的错误,因此我决定切换到Log Parser Studio,以使自己更轻松。我唯一的问题是我在Log Parser 2.2中使用的查询在Log Parser Studio中不起作用。
该查询为:
LogParser -i:XML -o:CSV -fNames:XPath -fMode:Tree SELECT
/log/event/@time, /log/event/session/@windowsAccount,
/log/event/session/@virtualAccount
FROM Logs\*.log
WHERE /log/event/session/@virtualAccount = 'accountName' AND
/log/event/@name = 'I_LOGON_AUTH_SUCCEEDED'
现在要调整为适用于Log Parser Studio的查询,如下所示:
SELECT /log/event/@time, /log/event/session/@windowsAccount,
/log/event/session/@virtualAccount FROM *.log WHERE
/log/event/session/@virtualAccount='accountName' AND
/log/event/@name='I_LOGON_AUTH_SUCCEEDED'
并且应该抓住我所有由特定用户“ accountName”命名为“ I_LOGON_AUTH_SUCCEEDED”的事件,但目前情况并非如此。更改后,我继续出现以下错误:
Error parsing query: WHERE clause: Semantice Error: content contains a
STRING value ("accountName") which cannot be parsed by the input context:
Value "accountname" is not an integer [SQL query syntax invalid or
unsupported.]
New Query
XMLLOG
我还注意到在运行以下查询时:
SELECT *
FROM *.log
没有一个名称为字符串的帐户出现,只有那些完全是整数的帐户出现。
任何帮助将不胜感激。