Page Menu
Home
Phabricator
Search
Configure Global Search
Log In
Files
F15485789
D19674.diff
No One
Temporary
Actions
View File
Edit File
Delete File
View Transforms
Subscribe
Mute Notifications
Award Token
Flag For Later
Size
2 KB
Referenced Files
None
Subscribers
None
D19674.diff
View Options
diff --git a/src/__phutil_library_map__.php b/src/__phutil_library_map__.php
--- a/src/__phutil_library_map__.php
+++ b/src/__phutil_library_map__.php
@@ -1206,6 +1206,7 @@
'DrydockSlotLockException' => 'applications/drydock/exception/DrydockSlotLockException.php',
'DrydockSlotLockFailureLogType' => 'applications/drydock/logtype/DrydockSlotLockFailureLogType.php',
'DrydockTestRepositoryOperation' => 'applications/drydock/operation/DrydockTestRepositoryOperation.php',
+ 'DrydockTextLogType' => 'applications/drydock/logtype/DrydockTextLogType.php',
'DrydockWebrootInterface' => 'applications/drydock/interface/webroot/DrydockWebrootInterface.php',
'DrydockWorker' => 'applications/drydock/worker/DrydockWorker.php',
'DrydockWorkingCopyBlueprintImplementation' => 'applications/drydock/blueprint/DrydockWorkingCopyBlueprintImplementation.php',
@@ -6620,6 +6621,7 @@
'DrydockSlotLockException' => 'Exception',
'DrydockSlotLockFailureLogType' => 'DrydockLogType',
'DrydockTestRepositoryOperation' => 'DrydockRepositoryOperationType',
+ 'DrydockTextLogType' => 'DrydockLogType',
'DrydockWebrootInterface' => 'DrydockInterface',
'DrydockWorker' => 'PhabricatorWorker',
'DrydockWorkingCopyBlueprintImplementation' => 'DrydockBlueprintImplementation',
diff --git a/src/applications/drydock/logtype/DrydockTextLogType.php b/src/applications/drydock/logtype/DrydockTextLogType.php
new file mode 100644
--- /dev/null
+++ b/src/applications/drydock/logtype/DrydockTextLogType.php
@@ -0,0 +1,27 @@
+<?php
+
+/**
+ * Simple convenience log type for logging arbitrary text.
+ *
+ * Drydock logs can be given formal types, which allows them to be translated
+ * and filtered. If you don't particularly care about fancy logging features,
+ * you can use this log type to just dump some text into the log. Maybe you
+ * could upgrade to more formal logging later.
+ */
+final class DrydockTextLogType extends DrydockLogType {
+
+ const LOGCONST = 'core.text';
+
+ public function getLogTypeName() {
+ return pht('Text');
+ }
+
+ public function getLogTypeIcon(array $data) {
+ return 'fa-file-text-o grey';
+ }
+
+ public function renderLog(array $data) {
+ return idx($data, 'text');
+ }
+
+}
diff --git a/src/applications/drydock/storage/DrydockRepositoryOperation.php b/src/applications/drydock/storage/DrydockRepositoryOperation.php
--- a/src/applications/drydock/storage/DrydockRepositoryOperation.php
+++ b/src/applications/drydock/storage/DrydockRepositoryOperation.php
@@ -203,6 +203,14 @@
return $this->getProperty('exec.workingcopy.error');
}
+ public function logText($text) {
+ return $this->logEvent(
+ DrydockTextLogType::LOGCONST,
+ array(
+ 'text' => $text,
+ ));
+ }
+
public function logEvent($type, array $data = array()) {
$log = id(new DrydockLog())
->setEpoch(PhabricatorTime::getNow())
File Metadata
Details
Attached
Mime Type
text/plain
Expires
Fri, Apr 11, 2:25 AM (1 w, 5 d ago)
Storage Engine
blob
Storage Format
Encrypted (AES-256-CBC)
Storage Handle
7226821
Default Alt Text
D19674.diff (2 KB)
Attached To
Mode
D19674: Provide a convenient way to log arbitrary text in Drydock without needing structured log classes
Attached
Detach File
Event Timeline
Log In to Comment