Big Brother has been designed using a client-server model in order to allow data acquisition and monitoring on the same machine or two different machines. bbrd, the Big Brother reader daemon, provides the interface between the Big Brother database produced by bbd and any monitoring client which may want access to that data, such as bbana. Separating the data collection from the data transmission allows data collection to continue in the event of a network failure, providing a more robust solution. bbrd needs to run on the same machine on which bbd is running and needs to know the location of the database produced by bbd. In addition, bbrd needs to be told on which port it should listen for incoming requests for data. Each of these pieces of information can be specified via command line options when the program is started.
bbrd waits for a network connection on the port specified on the command line. After opening the socket, bbrd expects the client to send the date for which it wants data in the form mmddyyyy. bbrd then opens the database for that date and transmits the following information one line at a time:
Note: If you plan to write your own analysis script/program, the colons (:) are a required part of the format of the data you will receive from bbrd. They are used as delimiters.
bbrd keeps a log of all connections and startups in a file you may specify on the command line
bbd takes the following command line options
-d database_directory specifies in which directory the bbd database is stored. The default is /tmp
-l logfile specifies the name of the bbrd log file. The default is database_directory/bbrd.log
-p port specifies the port number on which bbrd should listen for connections. The default is 2345.