aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorCarl Schwan <carl@carlschwan.eu>2022-09-22 12:36:15 +0200
committerCarl Schwan <carl@carlschwan.eu>2022-10-10 13:26:40 +0200
commitc9703827e048a733306d5b7a4fadbe51c23d23a0 (patch)
treec28f5c5e5d82a9ee79fb03df515fed768d6420aa
parent29af54f10d53f7e8ee5749324c299ac0775f09b0 (diff)
downloadnextcloud-server-c9703827e048a733306d5b7a4fadbe51c23d23a0.tar.gz
nextcloud-server-c9703827e048a733306d5b7a4fadbe51c23d23a0.zip
Expose clearing the profiles and fix it
Signed-off-by: Carl Schwan <carl@carlschwan.eu>
-rw-r--r--lib/private/Profiler/FileProfilerStorage.php1
-rw-r--r--lib/private/Profiler/Profiler.php4
-rw-r--r--lib/public/Profiler/IProfiler.php6
3 files changed, 11 insertions, 0 deletions
diff --git a/lib/private/Profiler/FileProfilerStorage.php b/lib/private/Profiler/FileProfilerStorage.php
index ce09ed51ed9..d583549332e 100644
--- a/lib/private/Profiler/FileProfilerStorage.php
+++ b/lib/private/Profiler/FileProfilerStorage.php
@@ -99,6 +99,7 @@ class FileProfilerStorage {
$iterator = new \RecursiveIteratorIterator($iterator, \RecursiveIteratorIterator::CHILD_FIRST);
foreach ($iterator as $file) {
+ $file = $file->getPathInfo();
if (is_file($file)) {
unlink($file);
} else {
diff --git a/lib/private/Profiler/Profiler.php b/lib/private/Profiler/Profiler.php
index 8aa800fbc6d..9fd5e76d592 100644
--- a/lib/private/Profiler/Profiler.php
+++ b/lib/private/Profiler/Profiler.php
@@ -102,4 +102,8 @@ class Profiler implements IProfiler {
public function setEnabled(bool $enabled): void {
$this->enabled = $enabled;
}
+
+ public function clear(): void {
+ $this->storage->purge();
+ }
}
diff --git a/lib/public/Profiler/IProfiler.php b/lib/public/Profiler/IProfiler.php
index 78325089523..5fa4582add7 100644
--- a/lib/public/Profiler/IProfiler.php
+++ b/lib/public/Profiler/IProfiler.php
@@ -98,4 +98,10 @@ interface IProfiler {
* @since 24.0.0
*/
public function collect(Request $request, Response $response): IProfile;
+
+ /**
+ * Clear the stored profiles
+ * @since 25.0.0
+ */
+ public function clear(): void;
}