Knowing who downloads what from the web

Posted on 2003-03-11
Medium Priority
Last Modified: 2013-12-18
Is there a way for me to know when a user actually downloads an attachment from the web? It is relatively easy to track who visited which pages, but I cannot find something similar for downloads.


Question by:cyberzork
Welcome to Experts Exchange

Add your voice to the tech community where 5M+ people just like you are talking about what matters.

  • Help others & share knowledge
  • Earn cash & points
  • Learn & ask questions
  • 3
  • 2

Expert Comment

ID: 8110477
Well, the link itself will generate an event in your http logs.  You can configure those logs (either w3c style text files or domlog.nsf) via the server configuration document.  In that case, an entry is created for each http activity.

A download will have a specific URL, and will contain $file as part of its url path.  For example:


there may be more, and there are several varations, but it will almost always have the $file as part of the url.

That should be easy enough to parse from the log entries.  If you make users log in, their log in name will be associated with the log entry.
LVL 63

Expert Comment

ID: 8110626
Ok, and based on this /$FILE/ records in domlog.nsf you can make it even easy to observ how much bytes, how often and by home are fetched by copying this records into a separate log database customized for your application needs.

Do you like some code for this?


Author Comment

ID: 8117497
Zvonko, yes, I would like to see some code.

Technology Partners: We Want Your Opinion!

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

LVL 63

Accepted Solution

Zvonko earned 800 total points
ID: 8138998
Ok, here my agent collecting all downloads for all databases in /bulletin directory.
All collected records are stored in bulletin/access.nsf database. In that database you can build Views sorted by IP address, username, date, and so on. And in thise database you can calculate downloaded bytes to totals by any category.

Here the agent running on CreatedOrModified documents in domlog.nsf:

Sub Initialize
     Dim session As New NotesSession
     Dim db As NotesDatabase
     Dim protocolDb As New NotesDatabase( "", "bulletin/access.nsf" )
     Dim collection As NotesDocumentCollection
     Dim doc As NotesDocument
     Dim j As Long
     Set db = session.CurrentDatabase
     Set collection = db.UnprocessedDocuments
     For j = 1 To collection.Count
          Set doc = collection.GetNthDocument( j )
          If (Instr(1,doc.Request(0),"/bulletin")) Then
               If (Instr(1,doc.Request(0),"/$FILE/")) Or (Instr(1,doc.Request(0),"?OpenDocument")) Or (Instr(1,doc.Request(0),"?OpenForm"))  _
               Or (Instr(1,doc.Request(0),"?EditDocument"))  Or (Instr(1,doc.Request(0),"?CreateDocument")) Or ((Instr(1,doc.Request(0),"?OpenDatabase")) And Not ((doc.AuthenticatedUser(0) = "-"))) Then
                    Call doc.CopyToDatabase(protocolDb )          
               End If
          End If
          Call session.UpdateProcessedDoc( doc )
End Sub

Does this help?


Author Comment

ID: 8321123
Thanks Zvonko. Haven't tried that yet, but I will.
LVL 63

Expert Comment

ID: 8321255
Thanks for the points :-)

The agent is from my productive environment.
Only thing is that you have to adapt to your database names and logging requirements.

Good luck,


Featured Post

Independent Software Vendors: We Want Your Opinion

We value your feedback.

Take our survey and automatically be enter to win anyone of the following:
Yeti Cooler, Amazon eGift Card, and Movie eGift Card!

Question has a verified solution.

If you are experiencing a similar issue, please ask a related question

Lack of Storage capacity is a common problem that exists in every field of life. Here we are taking the case of Lotus Notes Emails, as we all know that we are totally depend on e-communication i.e. Emails. This article is fully dedicated to resolvin…
Sometimes clients can lose connectivity with the Lotus Notes Domino Server, but there's not always an obvious answer as to why it happens.   Read this article to follow one of the first experiences I had with Lotus Notes on a client's machine, my…
Michael from AdRem Software outlines event notifications and Automatic Corrective Actions in network monitoring. Automatic Corrective Actions are scripts, which can automatically run upon discovery of a certain undesirable condition in your network.…
Monitoring a network: how to monitor network services and why? Michael Kulchisky, MCSE, MCSA, MCP, VTSP, VSP, CCSP outlines the philosophy behind service monitoring and why a handshake validation is critical in network monitoring. Software utilized …
Suggested Courses
Course of the Month13 days, 10 hours left to enroll

800 members asked questions and received personalized solutions in the past 7 days.

Join the community of 500,000 technology professionals and ask your questions.

Join & Ask a Question