             PUROutputSetting(output: PURTestFailureOutput.self, tagPattern: "failure", settings: ["logStorage": logStorage]),
         ]
 
-        return configuration
+        loggerConfiguration = configuration
+        logger = PURLogger(configuration: configuration)
+    }
+
+    override func tearDown() {
+        logger.logStore().clearAll()
+        logger.shutdown()
     }
 
     func testChangeTagFilterPlugin() {
-        let loggerConfiguration = PURLoggerStandardPluginTest.loggerConfiguration
-        let logger = PURLogger(configuration: loggerConfiguration)
-        let testLogStorage = loggerConfiguration.logStorage
-
         XCTAssertEqual(testLogStorage.description, "")
 
         logger.post(["aaa": "123"], tag: "filter.test")

        logger.post(["eee": "not filtered"], tag: "filter.testXXX")

        XCTAssertEqual(testLogStorage.description, "[filter.testXXX|aaa:123][filter.testXXX|bbb:456,ccc:789][filter.testXXX|eee:not filtered]")

        logger.logStore().clearAll()
        logger.shutdown()
    }

    func testAppendParamFilterPlugin() {
        let loggerConfiguration = PURLoggerStandardPluginTest.loggerConfiguration
        let logger = PURLogger(configuration: loggerConfiguration)
        let testLogStorage = loggerConfiguration.logStorage

        XCTAssertEqual(testLogStorage.description, "")

        logger.post(["aaa": "123"], tag: "filter.append")

        logger.post(["ccc": "789"], tag: "filter.append.yyy")

        XCTAssertEqual(testLogStorage.description, "[filter.append|aaa:123,ext:][filter.append.xxx|bbb:456,ext:xxx][filter.append.yyy|ccc:789,ext:yyy]")
    }

    func testUnbufferedOutputPlugin() {
        XCTAssertEqual(testLogStorage.description, "")

        logger.post(["aaa": "123"], tag: "test.hoge")
