summaryrefslogtreecommitdiff
path: root/bin/bbackupd/BackupDaemon.cpp
Commit message (Collapse)AuthorAge
* Log statistics before BackupFinish event, so that they can be usedChris Wilson2008-10-04
| | | | | in reporting in the NotifyScript.
* Remove Win32 command socket thread, as it has caused too much trouble.Chris Wilson2008-10-03
| | | | | | | | | | | Handle command socket on Win32 the same as all other platforms, removing #ifdefs from BackupDaemon. Will replace this thread with regular but not excessive command socket polling using timers in future. Change error messages when command socket comms fail to make them clearer.
* Add file logging support (LogFile and LogFileLevel config options).Chris Wilson2008-09-26
| | | | | | | | | | | | | | | | Ensure that backup-finish is always called, and add a new event, backup-ok, which is called just before backup-finish when the backup run was successful. Keep track of the last backup status notification sent (excluding backup-start and backup-finish) and send a notification whenever it changes. Add a new boolean option, NotifyAlways, to override that check and always send notifications to the NotifyScript after every backup run, for notify scripts which do their own state tracking or otherwise require notification on every event.
* Prefix event log application name with Box Backup, and remove it fromChris Wilson2008-09-14
| | | | | | | | | | all calls to SetProgramName, for better consistency on Unix. Make bbstoreaccounts and bbackupctl set their program names for logging. Don't override supplied tag with service name when BackupDaemon is run as a service.
* Handle sysadmin notifications and calculate next sync time in Chris Wilson2008-08-21
| | | | | | | BackupDaemon::RunSyncNow, moved from RunSyncNowWithExceptionHandling, which just does the exception handling. We want to replace the exception handling in Boxi, but not the other stuff.
* Pass a RunStatusProvider and a ReadLoggingStream::Logger from Chris Wilson2008-08-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | BackupDaemon through BackupClientDirectoryRecord, BackupStoreFile and BackupStoreFileEncodeStream to ReadLoggingStream, to allow progress callbacks during file upload and cancelling upload part-way. Implement ReadLoggingStream::Logger in BackupClientDirectoryRecord::SyncParams, which thunks the notifications back to the ProgressNotifier. Add the SysadminNotifier interface from Boxi. Add NotifyIDMapsSetup() to ProgressNotifier. Change BackupClientDirectoryRecord::SyncParams to store references to the individual callback interfaces rather than BackupDaemon. Initialise all members in BackupDaemon. Add ability for BackupDaemon user to override the ProgressNotifier, LocationResolver, SysadminNotifier and RunStatusProvider that will be used during the backup. Make BackupDaemon::Location class public and provide access to the configured locations for Boxi (dangerous, they could be modified without BackupDaemon knowing it).
* Move the code that runs a backup with exception handling into its ownChris Wilson2008-08-10
| | | | | method, to allow testbbackupd to call it.
* Fix redundant logging of command socket messages.Chris Wilson2008-08-08
| | | | | Reformat for readability.
* Log the error code returned by NotifyScript.Chris Wilson2008-08-03
|
* Add missing #include, thanks to Alex Howansky.Chris Wilson2008-07-02
| | | | | | Reset notification state for backup-error after a successful backup, thanks to Wolfgang Trexler.
* Track and log file deletions by name.Chris Wilson2008-05-28
| | | | | | | | | | | | Split crypto init and file sync process into its own method, to reduce call depth and facilitate calling in process from tests. Differentiate between 3 uses of stat in BackupClientDirectoryRecord by renaming the structures. Use stat instead of lstat when checking the filesystem that's holding an entity, in case it's a symbolic link to a different filesystem.
* Fix crash when notifying sysadmin of an invalid event code.Chris Wilson2008-04-09
| | | | | Disable some debug logging.
* Undo mangling by tailorChris Wilson2008-04-04
|
* TailorizationChris Wilson2008-04-04
| | | | | | | | | | | Import of the upstream sources from Repository: http://localhost:8000/ Kind: hg Revision: 7807b7768163f1c2537756abe5416063989cebb1 Original author: tailor@rocio.int.aidworld.org Date: 2008-03-16 19:44:36+00:00
* Allow configuration of the server port that the client will connect to Chris Wilson2008-03-28
| | | | | | | | | | | | | (bbackupd and bbackupquery). Redesign ConfigurationVerify to use classes instead of structs. Use port 22011 instead of 2201 during tests, to reduce the chances of conflicting with a running bbstored or other process. Ignore autogen_* in svn:ignore everywhere instead of individual per-file ignores.
* Improve logging with macros that consistently output strerror(errno) andChris Wilson2008-03-28
| | | | | | | | | | | | | | | errno, replacing almost all use of strerror() in the main code. Log a more detailed error message before throwing an exception for some more system call failures. Make FileStream store its filename on all platforms, not just Windows. Wrap some long lines at less than 80 characters to improve readability. Fix some minor violations of coding standard (white space) and a typo in a comment.
* Use logging framework rather than printf to log when messages are sent Chris Wilson2008-03-13
| | | | | to the control client.
* Sun CC compile fix: doesn't like assigning an iterator to a const_iterator.Chris Wilson2008-01-22
|
* Use the specified service name when installing and removing the service.Chris Wilson2007-10-17
| | | | | | | | Pass the service name on the service command line, and use it for event log messages. (merges [1856])
* Add "-h" and "/?" options to display usage in Daemon.Chris Wilson2007-10-17
| | | | | | | | | Extend usage info with service commands in BackupDaemon. Disable useless -D, -V and -k options on Windows. (merges 1855])
* Use Daemon's delegated option processing instead of our own hacks.Chris Wilson2007-10-17
| | | | | | Move Windows service startup, installation and removal to BackupDaemon. (merges [1854])
* Don't initialise the command socket thread (on Win32) until theChris Wilson2007-10-17
| | | | | | | | | | | | configuration is known. Create the command socket (on Win32) with the specified pipe name in the configuration file. Commonise some code between Windows and Unix daemon startup. (merges [1831])
* Don't abort if one of the location paths doesn't exist, just print a Chris Wilson2007-10-17
| | | | | | | | | | warning and continue. Use an auto_ptr to avoid memory leaks when setting up a location fails. (merges [1828])
* Allow configuration of the time to delete redundant store locations.Chris Wilson2007-10-08
|
* Fix crash when notifyscript is called for BackupStart or BackupFinish.Chris Wilson2007-10-08
|
* Fix error message when failing to create remote directory for location.Chris Wilson2007-09-01
|
* Call the notify script whenever backup starts or finishes, but theChris Wilson2007-09-01
| | | | | | default script does nothing in this case. Requested by scott <scott@lubetech.com.au>.
* Fixed object use after delete, thanks Gary! (refs #3, merges [1673])Chris Wilson2007-07-26
|
* Fixed object store read/write, fixes #18 properly, thanks Gary!Chris Wilson2007-07-26
| | | | | (refs #3, merges [1672])
* Undo bad merge of [1658] and [1669] (refs #3, merges [1671])Chris Wilson2007-07-26
|
* Apply remaining parts of Gary's patch, missing from [1658], thanks GaryChris Wilson2007-07-26
| | | | | (refs #3, merges [1669])
* Apply Gary's patch to save the list of unused root directory entriesChris Wilson2007-07-26
| | | | | | in the store object info file, so that they will persist across restarts. (refs #18, refs #3, merges [1658])
* More helpful error messages when location setup failed.Chris Wilson2007-07-26
|
* Add more debugging checks and messages for location setup errorChris Wilson2007-07-26
| | | | | | reported by Pete Jalajas (http://lists.warhead.org.uk/pipermail/boxbackup/2007-July/003668.html)
* Hopefully fix a bug reported by Tobias Balle-Petersen, where unusedChris Wilson2007-07-18
| | | | | | locations on the store would never be deleted because the timer would be reset on every backup pass (refs #3).
* Fix formatting bugs. (refs #3)Chris Wilson2007-04-28
|
* Log event name instead of numeric code. (refs #3)Chris Wilson2007-04-22
|
* Move all command socket communications to the worker thread, to avoidChris Wilson2007-03-24
| | | | | | | | | | deadlocks. Use events, and a message list protected by a critical section, to pass messages between threads. (refs #3)
* Reformat long lines for readability. (refs #3, merges remainder of [1459])Chris Wilson2007-03-24
|
* Better handle a case where a force-sync command comes in immediatelyChris Wilson2007-03-24
| | | | | | | after (or during) a sync, i.e. less than MinimumFileAge seconds after the last one. In this case, just move back the syncPeriodStart by 1 second. (refs #3, merges part if [1459])
* iUse our new ClientException codes for clock skew and archive problems.Chris Wilson2007-03-24
| | | | | (refs #3, merges part of [1459])
* Add a new notification constant, NotifyEvent_BackupError, for use whenChris Wilson2007-03-22
| | | | | | | | | | | | | an exception occurs during the backup. Make bbackupd notify sysadmin when an exception occurs during the backup, using this error code, and the notification string "backup-error". Change NotifyEvent__MAX to be one greater than the highest notification constant, makes code more maintainable. (refs #3)
* Stop locations from being deleted from the store just because their localChris Wilson2007-01-25
| | | | | directory can't be found, as suggested by Gary (refs #3)
* Log important output at NOTICE level, instead of INFO (refs #3)Chris Wilson2007-01-15
|
* Added a new config option, LogAllFileAccess, which will log access to every Chris Wilson2007-01-11
| | | | | | file and scanning every directory. The current implementation is taken straight from the Boxi branch. To be extended shortly. (refs #3)
* Change all logging to use the logging framework, as an example. (refs #3)Chris Wilson2006-12-16
|
* Improved debugging when a path to a location doesn't exist or can't beChris Wilson2006-12-16
| | | | | opened. (refs #3)
* Moved KeepAlive timer to BackupClientContext object.Chris Wilson2006-12-03
| | | | | | | | Made timeout initialisation non-static, and a property of the context object. (perhaps should be in rParams, I know). (refs #3, refs #9)
* Log failure to rename ID map files. (refs #3)Chris Wilson2006-12-03
|
* Add ExtendedLogFile option to bbackupd config (refs #9)Chris Wilson2006-11-14
|