lp://staging/~jamesodhunt/upstart/job-logging
- Get this branch:
- bzr branch lp://staging/~jamesodhunt/upstart/job-logging
Branch merges
Branch information
Recent revisions
- 1330. By James Hunt
-
Introduction of 'log' argument to 'console' stanza allowing
job output to be captured.* contrib/
vim/syntax/ upstart. vim: Added 'log' and missing
'none'.
* init/Makefile.am: Added log.c, log.h and test_log.c
* init/job.c: job_new(): Initialize log.
* init/job.h: Add Log pointer to Job.
* init/job_class.c: XXX: behaviour change: Default for 'console'
is now CONSOLE_LOG rather than CONSOLE_NONE.
Rationale is that if a job does produce output, you want to see
it since the chances are it will contain useful error details.
* init/job_class.h: Added CONSOLE_LOG to ConsoleType and updated
documentation for ConsoleType.
* init/job_process.c:
- job_process_run(): Updated to reflect new parameter for
job_process_ spawn() .
- job_process_spawn() : Now accepts a Job rather than a
JobClass to allow job->log and class->console to be handled
appropriately. Now creates pty master and slave fds for
console logging.
- job_process_error_read( ): Added entries for:
- JOB_PROCESS_ERROR_OPENPT_ MASTER
- JOB_PROCESS_ERROR_OPENPT_ UNLOCKPT
- JOB_PROCESS_ERROR_PTSNAME
- JOB_PROCESS_ERROR_OPENPT_ SLAVE
- job_process_log_path( ): New function that returns full path to log
file for specified Job.
* init/job_process.h:
- Updated JobProcessErrorType with new entries:
- JOB_PROCESS_ERROR_OPENPT_ MASTER
- JOB_PROCESS_ERROR_OPENPT_ UNLOCKPT
- JOB_PROCESS_ERROR_PTSNAME
- JOB_PROCESS_ERROR_OPENPT_ SLAVE
- job_process_spawn() : Updated prototype.
- job_process_log_path( ): Added prototype.
* init/main.c:
- handle_logdir(): New function for overriding log directory.
- Added '--logdir' to options.
* init/man/init.5:
- Update and restructure of section on 'console' stanza.
- Added a FILES section.
* init/man/init.8: Updated with details of new '--logdir' option.
* init/parse_job.c: stanza_console(): Updated for "log".
* init/paths.h: Added defines for JOB_LOGDIR, LOGDIR_ENV, XDG_CACHE_HOME
and USER_JOB_LOGDIR.
* init/session.c: Added missing function headers. New functions:
session_user_home( ) and session_ user_group( ).
* init/session.h: Added prototypes for session_user_home() and
session_user_group( ).
* init/system.c: system_setup_console( ): Update for CONSOLE_LOG.
* init/test_conf.c:
- TEST_FORCE_WATCH_UPDATE( ): Removed debug.
- test_select_job(): Added variable attributes to keep gcc 4.6 happy.
* init/test_event.c: Explicitly set console type to CONSOLE_NONE to
retain behaviour of existing tests.
* init/test_job.c:
- test_job_new(): Ensure log object not created on Job instantiation.
- test_change_state() : Explicitly set console type to CONSOLE_NONE to
retain behaviour of existing tests.
* init/test_job_class. c:
- test_new(): Ensure console type now defaults to CONSOLE_LOG.
- Explicitly set console type to CONSOLE_NONE to retain behaviour of
existing tests.
* init/test_job_process. c:
- child(): New child_tests added for TEST_OUTPUT and TEST_SIGNALS.
- get_available_pty_count( ): New function.
- Explicitly set console type to CONSOLE_NONE to retain behaviour of
existing tests.
- test_run(): Added new tests for CONSOLE_LOG.
- test_spawn(): Added new tests for CONSOLE_LOG.
- test_log_path(): New function.
- test_handler(): Added UPSTART_LOGDIR support to
- main():
- Update to allow number of forks to be specified when run as a child
process.
- Added call to test_log_path().
- initialize various subsystems since before, functions run from
main() had to be run in the order specified and exactly as listed
(certain tests relied on previous tests initializing a subsystem
which gives unexpected results and thus confusing behaviour
if the order of tests is changed).
* util/tests/test_user_ sessions. sh: Added tests for job logging. - 1329. By Scott James Remnant (Canonical)
-
* init/job_process.c (job_process_
spawn): Can't return on
dup2() error, we're in the child. Return an error back to
the child properly. - 1328. By Scott James Remnant (Canonical)
-
* init/job_process.c (job_process_
spawn), init/main.c: error
should be ENOENT - 1327. By Scott James Remnant (Canonical)
-
* init/job_class.c, init/job_class.h: Move constants into the
header file so they can be found from other source files.
* init/job_process.c (job_process_spawn): Only adjust the OOM
score if it isn't the default
* init/main.c: Apply the default OOM score to the init process
itself. - 1326. By Scott James Remnant (Canonical)
-
* init/main.c: Deal with failure to setup the system console by
falling back to /dev/null, so we don't end up without default fds
and castrate the process. - 1325. By Scott James Remnant <email address hidden>
-
* init/job_class.c (job_class_new): nit, use #defines for the default
nice level and oom score adjustment. - 1323. By James Hunt
-
* util/tests/
test_user_ sessions. sh: Be a little more verbose to give
invoker a warm feeling that the tests have actually passed. - 1322. By James Hunt
-
* init/session.c: session_
from_dbus( ): Handle case where a users
home directory is changed or where a uid is re-used for a
different username.
* init/session.h: Updated comments for Session object.
Branch metadata
- Branch format:
- Branch format 7
- Repository format:
- Bazaar repository format 2a (needs bzr 1.16 or later)
- Stacked on:
- lp://staging/upstart