*NOTE* This is beta version of server, use at your own risk. At this moment program works only on Unix systems. To work, server need Mono, (if you enable database) SQLite, (if you enable upload to database) Hadoop and ClamAV 1. First run After install, run program by command: mono grub-upload.exe configure for create default configuration file grub.xml If you want create only database, run program by command: mono grub-upload.exe createdb If you want update config file, run program by command: mono grub-upload.exe updateconf If you want update database, run program by command: mono grub-upload.exe updatedb 2. Normal run mono grub-upload.exe start (debug): start server. If additional parameter 'debug' is set, server start in debug mode. mono grub-upload.exe stop : stop server mono grub-upload.exe restart (debug): restart (stop then start) server. If additional parameter 'debug' is set, server start in debug mode. 3. Configuration variables - workdir - Full path to directory where been put .arc.gz and .idx files (similar to Apache Document Root) - tempdir - Full path to temporary directory where been put uploaded .arc.gz files before validation - address - HTTP address of server (by default, you can use "*" for all available addresses) - port - HTTP port on which been works server. If you want run server on standard HTTP port (80) you must run it as a root - hashpass - hash word used for validate .arc files. Must be that same like on dispatch server - enablelog - enable or disable simple log file with information about send .arc.gz files. Value "Y" enable log, "N" disable (default: "Y") - logpath - Full path (with filename) to log file - enableapi - enable or disable server API. Value "Y" enable API, "N" disable (default: "Y") - enabledb - enable or disable server database. Value "Y" enable database, "N" disable (default: "Y") - dbpath - Full path (with filename) to database file - minfreespace - minimal amount of MB free on disk. If on disk is less free space than this value, server stop accepting .arc.gz files - checkevery - Amount of minutes how often check for free space on disk. - enableupload - enable or disable upload .arc files to Hadoop database. Value "Y" enable upload, "N" disable (default: "N") - hadooppath - Full path (with hadoop) to "hadoop" executable file - uploadpath - Full path to directory in Hadoop where .arc files been stored - hadoopfreespace - Amount of MB free on disk. If on disk is less free space than this value, server start upload .arc files to database 4. API For connect to server API you must send request with HTTP method POST to http://address:port with command as a POST data. Available options: - "status" : return server status, amount of connected clients, version and percents of available disk space on server. Statuses: OK if everything is OK, Error if on lack of free space on server, Warning if server uploading .arc files to database. - "user=user,table=weekly" : return user weekly stats (amount of sent .arc files and urls in .arc files start and end date). - "user=user,table=(monthly,yearly)(,year=year,month=month)" : return monthly or yearly stats. If additional parameters 'year' and 'month' not set, return stats for all months or years. Parameter 'year' must be 4 digit format for year, parameter 'month' number between 1-12. - "list=number,table=weekly" : return weekly stats for 20 users from table, starting from 'number' record. Records similar to command "user=user,table=weekly" but start with username. - "list=number,table=(monthly,yearly)(,year=year,month=month)" : return monthly or yearly stats for 20 users from table, starting from 'number' record. If additional parameters 'year' and 'month' not set, return stats for current month or year. Parameter 'year' must be 4 digit format for year, parameter 'month' number between 1-12. First row of response is information about from which years or months stats available. - "overall(,user=user)" : return sum of .arc files,urls sent by users and amount of users. If additional parameter "user" is set, return sum of .ar files and urls sent by selected user. 5. Uploading .arc files to Hadoop For uploading .arc files to Hadoop use grub-uploader.exe program. You can manually upload .arc files too. For uploading .arc files from one day back run command: mono grub-uploader.exe For uploading .arc files from this same day, run command: mono grub-uploader.exe today 31.03.2009 Bartek thindil Jasicki