Changes

Jump to navigation Jump to search
678 bytes added ,  12:05, 5 February 2020
Add some drops about early logging
Line 8: Line 8:     
; Errors
 
; Errors
: These show that something goes really wrong. If an error message appears on the screen CRIU doesn't complete the operation and exits with error. At the same time, if CRIU's exit code is not 0, there should be an error message. Typically there are several of them, but only the first one denotes the real obstacle CRIU has hit, all subsequent ones can be due to this first.
+
: These show that something goes really wrong. If an error message appears on the screen CRIU doesn't complete the operation and exits with an error. At the same time, if CRIU's exit code is not 0, there should be an error message. Typically there are several of them, but only the first one denotes the real obstacle CRIU has hit, all subsequent ones can be due to this first.
    
; Warnings
 
; Warnings
Line 39: Line 39:  
pie: 39: Switched to the restorer 39                      # Message from PIE-context of process 39
 
pie: 39: Switched to the restorer 39                      # Message from PIE-context of process 39
 
</pre>
 
</pre>
      
=== Controlling the verbosity ===
 
=== Controlling the verbosity ===
Line 50: Line 49:     
Telling <code>-v0</code> will shut CRIU up, but that's really not recommended.
 
Telling <code>-v0</code> will shut CRIU up, but that's really not recommended.
 +
 +
=== Early logging ===
 +
 +
During CRIU initialization some things can fail, i.e., [[Kerndat|reading the kerndat file]]. Those failures may happen before the logging is set up (log file descriptors open etc.). The failures might even happen while setting up the logging. For all those nuisances, there is a static buffer that stores everything until logging has successfully initialized. The buffer has compile-time size of <code>EARLY_LOG_BUF_LEN</code> and serves only on early CRIU initialization. Afterwards, it always flushes: if the logging was set up successfully, to the corresponding logs; to <code>stderr</code> in case CRIU caught early fault and is about to exit.
    
== Log files ==
 
== Log files ==
   −
If requesting high log level you can get tons of logs on the screen. It's usually unwanted and hard to save (for further analyzes), so it's possible to ask CRIU write the logs into a log file. This is done with the option <code>-o|--log-file $name</code>. The log file will be created '''and truncated''' in the [[directories|working directory]], all messages will appear in it.
+
If requesting high log level you can get tons of logs on the screen. It's usually unwanted and hard to save (for further analyzes), so it's possible to ask CRIU write the logs into a log file. This is done by {{Opt|--log-file}} option. The log file will be created '''and truncated''' in the [[directories|working directory]], all messages will appear in it.
    
=== Per-pid logs ===
 
=== Per-pid logs ===
   −
During restore logs are generated by each process being restored. To make logs analyzes easier one can make CRIU generate individual log files for each process with the <code>--log-pid</code> option.
+
During restore, log entries are emitted for each process being restored. To make logs analysis easier, one can make CRIU generate separate per-process log files by using {{Opt|--log-pid}} option.
    
== See also ==
 
== See also ==
 
* [[Better logging]]
 
* [[Better logging]]
 
* [[Directories]]
 
* [[Directories]]
 +
* [[Debugging]]
   −
[[Category:Empty articles]]
+
[[Category: HOWTO]]
 +
[[Category: Using]]
105

edits

Navigation menu