I did a little digging. I have a LogFile Parser that I use to find trends or look at all log entries for a particular user.
Code:
Option Explicit
'On Error Resume Next
Dim FS 'File System Object
Dim CfgFile 'Config File
Dim InFile 'File to be read
Dim InFiles
Dim TheFile
Dim OutFile
Dim OutFilePath
Dim Data 'Data from File
Dim FolderPath 'Path to Folder
Dim objFolder 'Folder Object
Dim Search 'Text to Search
Dim WshNetwork 'Windows Scripting host Network Object
Dim SFind 'What to find
Dim FindCount
Dim FindCountTotal
FolderPath = InputBox("What LogPath?","LogPath", "C:\Program Files\Research In Motion\BlackBerry Enterprise Server\Logs\" & Year(Date) & Right("00" & Month(Date),2) & Right("00" & Day(Date),2))
Set WshNetwork = CreateObject("WScript.Network")
Set FS=CreateObject("scripting.filesystemobject")
Set objFolder = FS.GetFolder(FolderPath)
Set InFiles = objFolder.Files
OutFilePath = "c:\documents and settings\" & WshNetwork.Username & "\desktop\Parsed.txt"
FindCountTotal = 0
SFind = InPutBox("What Search Criteria?", "Search", WshNetwork.UserName)
Set OutFile = FS.Createtextfile(OutFilePath, True)
For Each TheFile in InFiles
FindCount = 0
OutFile.WriteLine("**************************************************")
OutFile.WriteLine("Begin File: " & TheFile.Name)
OutFile.WriteLine("**************************************************")
Set InFile = FS.opentextfile(TheFile.Path, 1)
Do Until InFile.AtEndOfStream = True
Data = InFile.Readline
If Instr(1,Data,SFind,1) Then
Findcount = FindCount + 1
FindCountTotal = FindCountTotal + 1
OutFile.Writeline(Data)
End If
Loop
OutFile.WriteLine("**************************************************")
OutFile.WriteLine("End File: " & TheFile.Name & " Found: " & FindCount & " Lines")
OutFile.WriteLine("**************************************************")
Next
OutFile.WriteLine("**************************************************")
OutFile.WriteLine("**************************************************")
OutFile.WriteLine("End of Parsing: Found: " & FindCountTotal & " Total Lines")
OutFile.WriteLine("**************************************************")
InFile.Close
Set InFile = Nothing
OutFile.Close
Set OutFile = Nothing
MsgBox(OutFilePath & " is Ready.")
Here are the strings I searched for. Replace the email address with the user you are looking for.
{who@where.com} Sending message to device
{who@where.com} Receiving message from device
Note: I am not sure if the overhead data is tagged like this as well, so some testing would need to be done. If it is consistent, you should be able to write a script similar to the above that will search multiple days and multiple users and dump totals to a CSV instead of the log data.
__________________
Berries Carried:
9700, 8220
9000, 8820, 8800, 7270, 8700c, 7290
7230, 7510, 6510, 5810, 957, 857, 950