| 
									
										
										
										
											2019-07-31 23:16:37 +08:00
										 |  |  | module.exports = class LogTestPlugin { | 
					
						
							|  |  |  | 	constructor(noTraced) { | 
					
						
							|  |  |  | 		this.noTraced = noTraced; | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | 	apply(compiler) { | 
					
						
							|  |  |  | 		const logSome = logger => { | 
					
						
							|  |  |  | 			logger.group("Group"); | 
					
						
							|  |  |  | 			if (!this.noTraced) { | 
					
						
							|  |  |  | 				logger.error("Error"); | 
					
						
							|  |  |  | 				logger.warn("Warning"); | 
					
						
							|  |  |  | 			} | 
					
						
							|  |  |  | 			logger.info("Info"); | 
					
						
							|  |  |  | 			logger.log("Log"); | 
					
						
							|  |  |  | 			logger.debug("Debug"); | 
					
						
							| 
									
										
										
										
											2021-04-04 11:16:58 +08:00
										 |  |  | 			logger.groupCollapsed("Collapsed group"); | 
					
						
							| 
									
										
										
										
											2019-07-31 23:16:37 +08:00
										 |  |  | 			logger.log("Log inside collapsed group"); | 
					
						
							| 
									
										
										
										
											2019-08-01 18:01:56 +08:00
										 |  |  | 			logger.group("Inner group"); | 
					
						
							|  |  |  | 			logger.log("Inner inner message"); | 
					
						
							| 
									
										
										
										
											2019-07-31 23:16:37 +08:00
										 |  |  | 			logger.groupEnd(); | 
					
						
							| 
									
										
										
										
											2019-08-05 18:15:03 +08:00
										 |  |  | 			logger.groupEnd(); | 
					
						
							| 
									
										
										
										
											2019-07-31 23:16:37 +08:00
										 |  |  | 			logger.log("Log"); | 
					
						
							|  |  |  | 			logger.groupEnd(); | 
					
						
							|  |  |  | 			logger.log("End"); | 
					
						
							|  |  |  | 		}; | 
					
						
							| 
									
										
										
										
											2019-07-31 23:29:21 +08:00
										 |  |  | 		logSome(compiler.getInfrastructureLogger("LogTestPlugin")); | 
					
						
							| 
									
										
										
										
											2019-07-31 23:16:37 +08:00
										 |  |  | 		compiler.hooks.compilation.tap("LogTestPlugin", compilation => { | 
					
						
							|  |  |  | 			const logger = compilation.getLogger("LogTestPlugin"); | 
					
						
							|  |  |  | 			logSome(logger); | 
					
						
							|  |  |  | 
 | 
					
						
							|  |  |  | 			const otherLogger = compilation.getLogger("LogOtherTestPlugin"); | 
					
						
							|  |  |  | 			otherLogger.debug("debug message only"); | 
					
						
							|  |  |  | 		}); | 
					
						
							|  |  |  | 	} | 
					
						
							|  |  |  | }; |