How to manualy recreate AWstats logs on Windows

Sometimes it happens that your scheduled task on Windows missed some logs. I’ve recently had a such problem because I’ve deleted a Windows user that created AWstats task. What did I do to repair this awkward situation?

Firstly you cannot simply regenerate daily log from the past. In this case AWstats will simply skip old records. Follow this steps:

  1. Go to AWstats data directory (AWstats\cgi-bin\data).
  2. Use Windows search ability to show only problematic files (if file name is awstats102013.yoursite.txt simply type yoursite in a searchbox).
  3. Mark all found files and move them to the temporary location.
  4. Now run Windows cmd.
  5. Go to AWstats tools dir. In my case:
    cd C:\awstats-7.0\tools
  6. Now create a merged log for a problematic website:
    :: where xx is unique IIS webiste id 
    logresolvemerge.pl L:\LOG_DIR\W3SVCxx\* > L:\LOG_DIR\W3SVCxx\merged.log
  7. Go to awstats.pl location:
    w:
    cd w:\wwwroot\AWstats\cgi-bin\
  8. Parse merged file:
    awstats.pl -config=yoursite -LogFile=L:\LOG_DIR\W3SVCxx\merged.log -update
  9. Place files from steps 2-3 back to their location. Don’t overwrite new files! Simply skip old ones.
  10. You should be able to see complete stats for your website.

TIP: How to dermine your webiste unique id? Simply go to IIS manager and click advanced settings in a right pane after selecting website.

How to run application on specified interface?

If you have two interfaces, you can run programs using one of them (despite the fact that Windows selects default interface based on a metric value). For example I virtualize Windows 7 and I need same static ip for it that my host computer uses. It’s OK, in this scenario I can run applications using Virtualbox NAT (this virtual adapter ip is something like 10.0.2.15). But I’m also a Heroes III gamer and I love to play with my coleagues using LAN. So there is need for a second adapter in bridged mode (with ip like 192.168.x.x).

What can I do?
Amazingly there is a Windows application that can do that. Simply download ForceBindIP from this site.

Usage is simple as that:

ForceBindIp -i 10.0.2.15 c:\Windows\System32\mstsc.exe

10.0.2.15 – interface ip

Remember to pass full path for a program that you’re trying to run!