Sign in to follow this  
Followers 0
Yashied

Log UDF

9 posts in this topic

#1 ·  Posted (edited)

LAST VERSION - 1.0

29-Aug-10

This simple UDF allows you to create a text log files with the following format. Using a very simple (see example). Enjoy!

###Event Log Files UDF Exaple###

2010-08-29  20:26:44  (0006)  Program start
2010-08-29  20:26:44  (0008)  Pinging www.autoitscript.com...
2010-08-29  20:26:44  (0005)  Ping is successful, Time = 73 ms
2010-08-29  20:26:44  (0007)  Program exit

2010-08-29  20:26:44  (0006)  Program start
2010-08-29  20:26:44  (0008)  Pinging www.autoitscript.com...
2010-08-29  20:26:44  (0005)  Ping is successful, Time = 110 ms
2010-08-29  20:26:44  (0007)  Program exit

2010-08-29  20:26:45  (0006)  Program start
2010-08-29  20:26:45  (0008)  Pinging www.autoitscript.com...
2010-08-29  20:26:45  (0005)  Ping is successful, Time = 154 ms
2010-08-29  20:26:45  (0007)  Program exit

Available functions

_Log_Close

_Log_Open

_Log_Report

Log UDF Library v1.0

Previous downloads: 237

Log.au3

Example

#Include <Log.au3>

Opt('MustDeclareVars', 1)

Global $hLog, $Time

$hLog = _Log_Open(@ScriptDir & '\MyProg.log', '###Event Log Files UDF Exaple###')
_Log_Report($hLog, 'Program start', 6)
_Log_Report($hLog, 'Pinging www.autoitscript.com...', 8)
$Time = Ping('www.autoitscript.com')
If $Time Then
    _Log_Report($hLog, 'Ping is successful, Time = ' & $Time & ' ms', 5)
Else
    Switch @error
        Case 1
            _Log_Report($hLog, 'Ping is fails, host is offline', 1)
        Case 2
            _Log_Report($hLog, 'Ping is fails, host is unreachable', 2)
        Case 3
            _Log_Report($hLog, 'Ping is fails, bad destination', 3)
        Case Else
            _Log_Report($hLog, 'Ping is fails, unknown error', 4)
    EndSwitch
EndIf
_Log_Report($hLog, 'Program exit', 7)
_Log_Close($hLog)
Edited by Yashied

Share this post


Link to post
Share on other sites



Excellent! Was looking at creating something like this too! Still don't know where you find the time to create WinAPIEx.au3 and your custom UDF's. Voted!


_AdapterConnections()_AlwaysRun()_AppMon()_AppMonEx()_BinaryBin()_CheckMsgBox()_CmdLineRaw()_ContextMenu()_ConvertLHWebColor()/_ConvertSHWebColor()_DesktopDimensions()_DisplayPassword()_DotNet_Load()/_DotNet_Unload()_Fibonacci()_FileCompare()_FileCompareContents()_FileNameByHandle()_FilePrefix/SRE()_FindInFile()_GetBackgroundColor()/_SetBackgroundColor()_GetConrolID()_GetCtrlClass()_GetDirectoryFormat()_GetDriveMediaType()_GetFilename()/_GetFilenameExt()_GetHardwareID()_GetIP()_GetIP_Country()_GetOSLanguage()_GetSavedSource()_GetStringSize()_GetSystemPaths()_GetURLImage()_GIFImage()_GoogleWeather()_GUICtrlCreateGroup()_GUICtrlListBox_CreateArray()_GUICtrlListView_CreateArray()_GUICtrlListView_SaveCSV()_GUICtrlListView_SaveHTML()_GUICtrlListView_SaveTxt()_GUICtrlListView_SaveXML()_GUICtrlMenu_Recent()_GUICtrlMenu_SetItemImage()_GUICtrlTreeView_CreateArray()_GUIDisable()_GUIImageList_SetIconFromHandle()_GUIRegisterMsg()_GUISetIcon()_Icon_Clear()/_Icon_Set()_IdleTime()_InetGet()_InetGetGUI()_InetGetProgress()_IPDetails()_IsFileOlder()_IsGUID()_IsHex()_IsPalindrome()_IsRegKey()_IsStringRegExp()_IsSystemDrive()_IsUPX()_IsValidType()_IsWebColor()_Language()_Log()_MicrosoftInternetConnectivity()_MSDNDataType()_PathFull/GetRelative/Split()_PathSplitEx()_PrintFromArray()_ProgressSetMarquee()_ReDim()_RockPaperScissors()/_RockPaperScissorsLizardSpock()_ScrollingCredits_SelfDelete()_SelfRename()_SelfUpdate()_SendTo()_ShellAll()_ShellFile()_ShellFolder()_SingletonHWID()_SingletonPID()_Startup()_StringCompact()_StringIsValid()_StringRegExpMetaCharacters()_StringReplaceWholeWord()_StringStripChars()_Temperature()_TrialPeriod()_UKToUSDate()/_USToUKDate()_WinAPI_Create_CTL_CODE()_WinAPI_CreateGUID()_WMIDateStringToDate()/_DateToWMIDateString()Au3 script parsingAutoIt SearchAutoIt3 PortableAutoIt3WrapperToPragmaAutoItWinGetTitle()/AutoItWinSetTitle()CodingDirToHTML5FileInstallrFileReadLastChars()GeoIP databaseGUI - Only Close ButtonGUI ExamplesGUICtrlDeleteImage()GUICtrlGetBkColor()GUICtrlGetStyle()GUIEventsGUIGetBkColor()Int_Parse() & Int_TryParse()IsISBN()LockFile()Mapping CtrlIDsOOP in AutoItParseHeadersToSciTE()PasswordValidPasteBinPosts Per DayPreExpandProtect GlobalsQueue()Resource UpdateResourcesExSciTE JumpSettings INISHELLHOOKShunting-YardSignature CreatorStack()Stopwatch()StringAddLF()/StringStripLF()StringEOLToCRLF()VSCROLLWM_COPYDATAMore Examples...

Updated: 04/09/2015

Share this post


Link to post
Share on other sites

I have tested your example script and it works well, but

could you explain the difference with _filewritelog function ? Posted Image


AutoIt 3.3.14.2 X86 - SciTE 3.6.0WIN 8.1 X64 - Other Example Scripts

Share this post


Link to post
Share on other sites

#4 ·  Posted (edited)

...could you explain the difference with _filewritelog function?

  • The opened log file will be accessed for other applications as read-only.
  • Ability to change the date and time format.
  • Ability to specify your own date and time for the event.
  • Ability to limit the size of a log file.
  • Ability to create multiple log files.
  • Simplicity deleting a log file, erasing its content, etc.
  • You can specify a log header.
  • You can write event ID.
Edited by Yashied

Share this post


Link to post
Share on other sites

It has more fonctionality, thank you for this clarification. Posted Image


AutoIt 3.3.14.2 X86 - SciTE 3.6.0WIN 8.1 X64 - Other Example Scripts

Share this post


Link to post
Share on other sites

Hi Yashied,

I was just going refactoring our log.udf when I decided I'd do a quick search in the forums to see what the other brain boxes had come up with.

What happens with your UDF if the program falls after the log file has been opened, but before it has been closed? Is it possible that the critical data that needs to be recorded will be lost?

Thanks for sharing,

D

Share this post


Link to post
Share on other sites

Hi Yashied,

I was just going refactoring our log.udf when I decided I'd do a quick search in the forums to see what the other brain boxes had come up with.

What happens with your UDF if the program falls after the log file has been opened, but before it has been closed? Is it possible that the critical data that needs to be recorded will be lost?

Thanks for sharing,

D

Log is not critical data. But anyway, nothing will happen, the log will contain the last writted entry.

Share this post


Link to post
Share on other sites

Hey thanks for this UDF been using it in all my scripts!


A true renaissance man

Share this post


Link to post
Share on other sites

Share this post


Link to post
Share on other sites

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!


Register a new account

Sign in

Already have an account? Sign in here.


Sign In Now
Sign in to follow this  
Followers 0