log: add "-d trace:PATTERN"
This is a bit easier to use than "-trace" if you are also enabling other kinds of logging. It is also more discoverable for experienced QEMU users, and accessible from user-mode emulators. Signed-off-by: Paolo Bonzini <pbonzini@redhat.com> Signed-off-by: Denis V. Lunev <den@openvz.org> Acked-by: Christian Borntraeger <borntraeger@de.ibm.com> Message-id: 1452174932-28657-12-git-send-email-den@openvz.org Signed-off-by: Stefan Hajnoczi <stefanha@redhat.com>
This commit is contained in:
		
							parent
							
								
									baf86d6b3c
								
							
						
					
					
						commit
						c84ea00dc2
					
				
							
								
								
									
										16
									
								
								util/log.c
									
									
									
									
									
								
							
							
						
						
									
										16
									
								
								util/log.c
									
									
									
									
									
								
							| @ -19,6 +19,7 @@ | ||||
| 
 | ||||
| #include "qemu-common.h" | ||||
| #include "qemu/log.h" | ||||
| #include "trace/control.h" | ||||
| 
 | ||||
| static char *logfilename; | ||||
| FILE *qemu_logfile; | ||||
| @ -154,6 +155,11 @@ int qemu_str_to_log_mask(const char *str) | ||||
|             for (item = qemu_log_items; item->mask != 0; item++) { | ||||
|                 mask |= item->mask; | ||||
|             } | ||||
| #ifdef CONFIG_TRACE_LOG | ||||
|         } else if (strncmp(p, "trace:", 6) == 0 && p + 6 != p1) { | ||||
|             trace_enable_events(p + 6); | ||||
|             mask |= LOG_TRACE; | ||||
| #endif | ||||
|         } else { | ||||
|             for (item = qemu_log_items; item->mask != 0; item++) { | ||||
|                 if (cmp1(p, p1 - p, item->name)) { | ||||
| @ -161,9 +167,9 @@ int qemu_str_to_log_mask(const char *str) | ||||
|                 } | ||||
|             } | ||||
|             return 0; | ||||
|         found: | ||||
|             mask |= item->mask; | ||||
|         } | ||||
|     found: | ||||
|         mask |= item->mask; | ||||
|         if (*p1 != ',') { | ||||
|             break; | ||||
|         } | ||||
| @ -177,6 +183,10 @@ void qemu_print_log_usage(FILE *f) | ||||
|     const QEMULogItem *item; | ||||
|     fprintf(f, "Log items (comma separated):\n"); | ||||
|     for (item = qemu_log_items; item->mask != 0; item++) { | ||||
|         fprintf(f, "%-10s %s\n", item->name, item->help); | ||||
|         fprintf(f, "%-15s %s\n", item->name, item->help); | ||||
|     } | ||||
| #ifdef CONFIG_TRACE_LOG | ||||
|     fprintf(f, "trace:PATTERN   enable trace events\n"); | ||||
|     fprintf(f, "\nUse \"-d trace:help\" to get a list of trace events.\n\n"); | ||||
| #endif | ||||
| } | ||||
|  | ||||
		Loading…
	
	
			
			x
			
			
		
	
		Reference in New Issue
	
	Block a user
	 Paolo Bonzini
						Paolo Bonzini