Progress Logging (Org Mode Compact Guide)

Next: Priorities, Previous: Multi-state Workflow, Up: TODO Items [Contents]

### 5.3 Progress Logging

To record a timestamp and a note when changing a TODO state, call the command `org-todo` with a prefix argument.

`C-u C-c C-t`

  Prompt for a note and record a the time of the TODO state change.

Org mode can also automatically record a timestamp and optionally a note when you mark a TODO item as DONE, or even each time you change the state of a TODO item. This system is highly configurable, settings can be on a per-keyword basis and can be localized to a file or even a subtree. For information on how to clock working time for a task, see Clocking Work Time.

#### Closing items

The most basic logging is to keep track of when a certain TODO item was marked as done. This can be achieved with4

    (setq org-log-done 'time)

Then each time you turn an entry from a TODO (not-done) state into any of the DONE states, a line ‘`CLOSED: [timestamp]`’ is inserted just after the headline.

If you want to record a note along with the timestamp, use5

    (setq org-log-done 'note)

You are then be prompted for a note, and that note is stored below the entry with a ‘`Closing Note`’ heading.

#### Tracking TODO state changes

You might want to keep track of TODO state changes. You can either record just a timestamp, or a time-stamped note for a change. These records are inserted after the headline as an itemized list. When taking a lot of notes, you might want to get the notes out of the way into a drawer. Customize the variable `org-log-into-drawer` to get this behavior.

For state logging, Org mode expects configuration on a per-keyword basis. This is achieved by adding special markers ‘`!`’ (for a timestamp) and ‘`@`’ (for a note) in parentheses after each keyword. For example:

    #+TODO: TODO(t) WAIT(w@/!) | DONE(d!) CANCELED(c@)

defines TODO keywords and fast access keys, and also request that a time is recorded when the entry is set to ‘`DONE`’, and that a note is recorded when switching to ‘`WAIT`’ or ‘`CANCELED`’. The same syntax works also when setting `org-todo-keywords`.

#### Footnotes

### (4)

The corresponding in-buffer setting is ‘`#+STARTUP: logdone`’.

### (5)

The corresponding in-buffer setting is ‘`#+STARTUP: logenotedone`’.

Next: Priorities, Previous: Multi-state Workflow, Up: TODO Items [Contents]