platform/core/system/dlog.git
3 years agoImprove the integration test script a bit 56/242656/1
Mateusz Majewski [Thu, 27 Aug 2020 08:01:01 +0000 (10:01 +0200)]
Improve the integration test script a bit

This includes eliminating many bashisms (the script is supposed to be
POSIX-compatible) and fixing various warnings reported by shellcheck.
Not all warnings are fixed yet, but the other ones are harder to fix,
and what we already achieved is useful anyway.

Change-Id: Ib0f4a2f52f90fb2af823dfe9c9c37c947a0e6632

3 years agoIntroduce log write buffering 59/235659/13
Mateusz Majewski [Fri, 8 May 2020 12:59:02 +0000 (14:59 +0200)]
Introduce log write buffering

Change-Id: Iac626630b6885a4214e42c5f810aa50d98d66ecb

3 years agotests: make inline warning behave like a normal part of log 58/242158/5
Adrian Szyndela [Mon, 24 Aug 2020 13:56:59 +0000 (15:56 +0200)]
tests: make inline warning behave like a normal part of log

Inline warning is added to a log if timestamps are incorrect.
However, such warning is sometimes printed as a separate line,
with all metadata added, and sometimes printed as if it was
part of log lines.

This commit makes the tests conforming to the change in the printing
function: warning printing is now consistent with the printing
format. That is, if new lines get metadata, then warning also gets metadata,
and if new lines don't get metadata, then warning also doesn't get it.

Change-Id: I186330adb7728a715bc4bc85a386edfd2204c2ff

3 years agologprint: implement log_print_log_line() 57/242157/5
Adrian Szyndela [Fri, 7 Aug 2020 07:40:10 +0000 (09:40 +0200)]
logprint: implement log_print_log_line()

A brand new, clean room implementation of log_print_log_line()
made with the specification consisting of the existing tests,
and a bit of the other existing code, but not the old implementation
of log_print_log_line().

There was one additional change: "inline warning". Initially it was printed
sometimes with its own copy of log metadata, sometimes without it.
Now, it's consistent with the printing format: the warning gets
its own metadata only if separate lines in logs get their own metadata.

Change-Id: I93f3b7864854a6a988a9ae02743df54ad46a37fe

3 years agolog_format_log_line: CLEANSE! PURGE! KILL! 56/242156/4
Michal Bloch [Mon, 3 Aug 2020 11:17:12 +0000 (13:17 +0200)]
log_format_log_line: CLEANSE! PURGE! KILL!

Change-Id: I3387a1511920a8695420e09ea55120d677061a71
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoAdd a few more QoS distribution tests 23/242523/1
Agnieszka Baumann [Fri, 21 Aug 2020 14:04:51 +0000 (16:04 +0200)]
Add a few more QoS distribution tests

Change-Id: I7ca564e2cffaa07b0375067c8fe36737f9b4beba

3 years agoqos: add pictures to the documentation 74/242174/3
Agnieszka Baumann [Fri, 21 Aug 2020 09:43:09 +0000 (11:43 +0200)]
qos: add pictures to the documentation

Change-Id: If7a3bbe653aec3570ecc0450f7841594de39bee0

3 years agoAdd a simple critical log integration test 49/242349/3
Mateusz Majewski [Tue, 25 Aug 2020 12:54:29 +0000 (14:54 +0200)]
Add a simple critical log integration test

Change-Id: If70b4d29efd36df435f0e91fffdc0cef17da2a08

3 years agoMove various dlog_logger functions to better places 41/242141/1
Mateusz Majewski [Mon, 24 Aug 2020 11:57:03 +0000 (13:57 +0200)]
Move various dlog_logger functions to better places

Change-Id: Ib9c4364a92f3ffdfc71f7e6b93c4aaa7ea8672ea

3 years agoSplit various writer related stuff to a separate file 34/242134/2
Mateusz Majewski [Mon, 24 Aug 2020 10:31:35 +0000 (12:31 +0200)]
Split various writer related stuff to a separate file

Change-Id: I973e057119535f7a57a16c469900a6480eab5c8c

3 years agoSplit various log_buffer related stuff to separate file 29/242129/2
Mateusz Majewski [Mon, 24 Aug 2020 09:48:23 +0000 (11:48 +0200)]
Split various log_buffer related stuff to separate file

Change-Id: If20af3642f882f1cd3357cb5a726d1d98db4232a

3 years agoSplit various dlogutil line parsing to a separate file 24/242124/2
Mateusz Majewski [Mon, 24 Aug 2020 09:04:14 +0000 (11:04 +0200)]
Split various dlogutil line parsing to a separate file

Change-Id: I633d126554f6a9d086abd7585f25f911085b5aea

3 years agoMetrics: test sorting comparator 42/242042/1
Agnieszka Baumann [Thu, 13 Aug 2020 08:48:09 +0000 (10:48 +0200)]
Metrics: test sorting comparator

Change-Id: I66ef7749dbd211fcc6e4951cef7cf3cdb66888a7

3 years agoFix various tiny dlog_logger issues 40/242040/1
Mateusz Majewski [Fri, 21 Aug 2020 12:27:39 +0000 (14:27 +0200)]
Fix various tiny dlog_logger issues

Change-Id: I66c5424aed49aa8a67fbbe4cdf17877ba4bd3e82

3 years agoMetrics sorting: prevent overflow and optimize 00/241900/3
Agnieszka Baumann [Thu, 20 Aug 2020 13:19:21 +0000 (15:19 +0200)]
Metrics sorting: prevent overflow and optimize

Change-Id: Idc7065e6224b77c6e9c37bc78852ec0107587323

3 years agoMove various socket related things to a separate file 38/242038/1
Mateusz Majewski [Fri, 21 Aug 2020 11:25:54 +0000 (13:25 +0200)]
Move various socket related things to a separate file

Change-Id: I37fc57b6ba380016621819bab7b9273ba2935191

3 years agoRemove an unnecessary signature 37/242037/1
Mateusz Majewski [Fri, 21 Aug 2020 11:25:34 +0000 (13:25 +0200)]
Remove an unnecessary signature

Change-Id: Ic0025f1ff1659b0c59c1a6789e9a6f906bc8aa39

3 years agoMove various reader_logger relate things to a separate file 01/242001/1
Mateusz Majewski [Fri, 21 Aug 2020 09:07:01 +0000 (11:07 +0200)]
Move various reader_logger relate things to a separate file

Change-Id: I80de86306dc906da8890554320c09d4ff746606b

3 years agoMove various reader related things to a new file 67/241967/1
Mateusz Majewski [Fri, 21 Aug 2020 06:28:03 +0000 (08:28 +0200)]
Move various reader related things to a new file

Change-Id: I40a4ca623294060d61b5d39da078d1f03ae44e3e

3 years agoAdd a missing pragma 66/241966/1
Mateusz Majewski [Fri, 21 Aug 2020 06:27:55 +0000 (08:27 +0200)]
Add a missing pragma

Change-Id: I184ed8c6a127743c3e06da59726dcecd70c4ff65

3 years agoMove some QoS related stuff to separate file 92/241892/2
Mateusz Majewski [Thu, 20 Aug 2020 12:50:48 +0000 (14:50 +0200)]
Move some QoS related stuff to separate file

Change-Id: Ic5ee82c0602d95297a4ab89b5b8a04d27a4454a0

3 years agoType correctness 10/239310/2
Agnieszka Baumann [Mon, 20 Jul 2020 11:09:28 +0000 (13:09 +0200)]
Type correctness

Change-Id: Iaa7dc84159e323aec2aa230b796de2ebb243946e

3 years agoPrevent `goto` from crossing initialisation 09/239309/4
Agnieszka Baumann [Mon, 20 Jul 2020 15:44:40 +0000 (17:44 +0200)]
Prevent `goto` from crossing initialisation

Change-Id: Ia7d14f3ae2b3884c5b77085b785202d70627cbdd

3 years agoMove some fd_entity related stuff to separate file 82/241882/2
Mateusz Majewski [Thu, 20 Aug 2020 11:07:32 +0000 (13:07 +0200)]
Move some fd_entity related stuff to separate file

Change-Id: I27b219d11d6f909ea49dd984df3a3de8420d4140

3 years agoFix a few signatures in a DLog unit test 81/241881/2
Mateusz Majewski [Thu, 20 Aug 2020 11:08:53 +0000 (13:08 +0200)]
Fix a few signatures in a DLog unit test

Change-Id: I38f5f962609ca971b47f09b2b07aaeb4f22be8c7

3 years agoMove some reader_pipe related stuff to separate file 60/241460/2
Mateusz Majewski [Thu, 20 Aug 2020 07:35:07 +0000 (09:35 +0200)]
Move some reader_pipe related stuff to separate file

Change-Id: Ie70ae0811e4eddd2d27eeb5855902d05f0b5fe00

3 years agoRemove some needless variables 59/241459/1
Mateusz Majewski [Thu, 20 Aug 2020 07:04:49 +0000 (09:04 +0200)]
Remove some needless variables

Change-Id: Iafd8493cc32b5184713b332c0f96284dc45bfc39

3 years agoRelease 6.0.16 89/241389/1 accepted/tizen/unified/20200820.133531 submit/tizen/20200819.185951
Michal Bloch [Wed, 19 Aug 2020 17:13:04 +0000 (19:13 +0200)]
Release 6.0.16

This release brings further improvements, including
performance, to QoS-adjacent mechanisms.

Change-Id: I3514c36944c3e1d0820977d9dc83314601e28238
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoReuse current timestamp in sort_vector_time_span 75/241375/3
Mateusz Majewski [Wed, 19 Aug 2020 11:02:55 +0000 (13:02 +0200)]
Reuse current timestamp in sort_vector_time_span

For performance. One syscall less per log is good!

Change-Id: I7cd41affc5367e825c52cdf70fdaf83c1dc521f1

3 years agoDo not call clock_gettime() if dedup is not configured 32/241332/8
Hyotaek Shim [Wed, 19 Aug 2020 08:39:51 +0000 (17:39 +0900)]
Do not call clock_gettime() if dedup is not configured

Change-Id: I04982e00fc15b09c7c2a826ec001cd18ba934227
Signed-off-by: Hyotaek Shim <hyotaek.shim@samsung.com>
3 years agoAdd PID-limit exceeded message 37/241337/2
Mateusz Majewski [Wed, 19 Aug 2020 08:48:52 +0000 (10:48 +0200)]
Add PID-limit exceeded message

Change-Id: I06ece67a40a38a2128eb7e3ddd3f4f536c48fac2

3 years agoImprove __log_limiter_pass_log interface 36/241336/2
Mateusz Majewski [Wed, 19 Aug 2020 07:55:06 +0000 (09:55 +0200)]
Improve __log_limiter_pass_log interface

Change-Id: Ie47e84c25a5ed615e52a69e51bde2018d987f06d

3 years agodlog_logger: disambiguate `log_storage` 08/239308/2
Agnieszka Baumann [Mon, 20 Jul 2020 09:31:45 +0000 (11:31 +0200)]
dlog_logger: disambiguate `log_storage`

No longer both a type name and a member name.

Change-Id: Ie073cb9295732a75b36a79727239d2f32723f278

3 years agoImprove libdlog Android Logger backend initialization 61/241361/1
Mateusz Majewski [Wed, 19 Aug 2020 10:28:07 +0000 (12:28 +0200)]
Improve libdlog Android Logger backend initialization

Exactly same thing as with the pipe backend few patches ago.

Change-Id: Ic9ca9068904206918e324376d53cf6ca80ed7b78

3 years agoEnable QoS test in the logger backend 99/241199/1 accepted/tizen/unified/20200820.034649 submit/tizen/20200819.013928
Mateusz Majewski [Tue, 18 Aug 2020 12:06:37 +0000 (14:06 +0200)]
Enable QoS test in the logger backend

This is aggressively hacky and I don't like it, but it's good enough for
now.

Change-Id: Iee6c3c79ec6a1af2d8073662b955b86a5ad9b0fc

3 years agoMake the QoS test slightly more consistent 67/241167/1
Mateusz Majewski [Tue, 18 Aug 2020 07:18:02 +0000 (09:18 +0200)]
Make the QoS test slightly more consistent

Change-Id: I5a6ec0ec19dcf24260ae054322bf6d6046298883

3 years agoFix the QoS test 66/241166/1
Mateusz Majewski [Tue, 18 Aug 2020 05:37:44 +0000 (07:37 +0200)]
Fix the QoS test

It seems that in the merged version there are a few lines missing.
Oops!

Change-Id: I1958266839242ef98d05030566d66ed0b2525099

3 years agoAdd quick mode to the integration tests 24/241124/3
Mateusz Majewski [Mon, 17 Aug 2020 11:01:04 +0000 (13:01 +0200)]
Add quick mode to the integration tests

"Ok, here we go. Focus. Speed. I am speed. 1 winner. 42 losers. I eat
losers for breakfast. Breakfast? Ah, maybe I should've had breakfast?
Uh, brekkie could be good for me. No no no, stay focused. Speed. I'm
faster than fast, quicker than quick! I am Lightning."
-- intro of Cars by Pixar Animation Studios

Change-Id: If82241fa670c53882735aff1daaa373c81ae0dac

3 years agoOnly write missed AL logs on the first service start 76/240976/7
Mateusz Majewski [Wed, 12 Aug 2020 12:20:06 +0000 (14:20 +0200)]
Only write missed AL logs on the first service start

The AL backend is based on the kernel devices, which may be written to
at any time. dlog_logger used to read the whole contents of the device
on its start, which is the reasonable thing to do (we don't want to miss
any logs) but bad for various reasons (for example, the same logs are
written to the persistent logs file many times when the service is
restarted). This patch makes it so that the device is only read in its
entirety on the first start of the service after reboot; on every other
start, all the logs existing in the device at the moment of the service
start are skipped.

Change-Id: I1eefd62191d66201ca74919d32b27aecbb1f621b

3 years agoAdd a NOP QoS test 17/241117/2
Mateusz Majewski [Mon, 17 Aug 2020 08:05:39 +0000 (10:05 +0200)]
Add a NOP QoS test

Change-Id: I2e4eea1c1fe50affe4b0e9b39ac104675428ecfa

3 years agoImprove libdlog pipe backend initialization 21/241121/2
Mateusz Majewski [Mon, 17 Aug 2020 09:46:42 +0000 (11:46 +0200)]
Improve libdlog pipe backend initialization

Change-Id: Ifaa13d33f3747b6176ef41308c64c1c51739c91d

3 years agoMake logctl argument parsing slightly more understandable 20/241120/1
Mateusz Majewski [Mon, 17 Aug 2020 09:18:51 +0000 (11:18 +0200)]
Make logctl argument parsing slightly more understandable

Change-Id: I17c6cde9e4888465b51f4aeece66ff1b5bba4931

3 years agoMove some functions to backend_androidlogger.c 98/240998/4
Mateusz Majewski [Thu, 13 Aug 2020 10:48:30 +0000 (12:48 +0200)]
Move some functions to backend_androidlogger.c

Change-Id: I6043e488277ddcf382a7743a0c8579a9efd0e395

3 years agoImprove logctl const-correctness 09/241009/3
Mateusz Majewski [Thu, 13 Aug 2020 12:00:17 +0000 (14:00 +0200)]
Improve logctl const-correctness

Change-Id: I19579e4960e60de146ccce6e565a881b53f2fe4b

3 years agoRemove unused logfile_callback 00/241000/1
Agnieszka Baumann [Thu, 13 Aug 2020 07:46:03 +0000 (09:46 +0200)]
Remove unused logfile_callback

Change-Id: I4f42d7e29fd9be4be5eb7ac192a2b002796a478f

3 years agoRelease 6.0.15 04/240904/1 accepted/tizen/unified/20200813.122630 submit/tizen/20200812.191454
Michal Bloch [Wed, 12 Aug 2020 17:19:07 +0000 (19:19 +0200)]
Release 6.0.15

This release brings further improvements to QoS

Change-Id: I5ff35143f8f18b26b4789789c119adc1ada042e2
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoAdd metrics.c test 02/240902/2
Agnieszka Baumann [Fri, 7 Aug 2020 07:49:03 +0000 (09:49 +0200)]
Add metrics.c test

Change-Id: I1bd23d2b0dfe9ed834872d6e9c7c61ba849030b9

3 years agoBuffer QoS limit writes 61/240861/4
Mateusz Majewski [Wed, 12 Aug 2020 06:55:56 +0000 (08:55 +0200)]
Buffer QoS limit writes

Change-Id: Ibcdc53b2255a5bc59ccaa6070a445cfa0b40663e

3 years agoFix an itty-bitty QoS-related memory leak 95/240895/3
Mateusz Majewski [Wed, 12 Aug 2020 12:21:04 +0000 (14:21 +0200)]
Fix an itty-bitty QoS-related memory leak

Change-Id: I5b5a487bbdc186fc63286f70df4b2ac0e28af622

3 years agoQoS: add some new distributions, change default 16/240816/2
Michal Bloch [Tue, 11 Aug 2020 15:14:39 +0000 (17:14 +0200)]
QoS: add some new distributions, change default

'equal_multi' is now the default.

Change-Id: If7e4ef33aba2982db023629590c901af5b4c3309
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoQoS: rename 'proportional' to 'proportional_raw' 15/240815/2
Michal Bloch [Tue, 11 Aug 2020 14:50:58 +0000 (16:50 +0200)]
QoS: rename 'proportional' to 'proportional_raw'

In anticipation of the other proportional-adjacent modes.

Change-Id: I9ec9077758160a4dce28f1e0854db117ee820e82

3 years agoIntroduce a minor math helper 14/240814/2
Michal Bloch [Tue, 11 Aug 2020 14:44:10 +0000 (16:44 +0200)]
Introduce a minor math helper

Change-Id: Ie4da8c6a962314a11e8ace65cde8f99105f9524a
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoQoS: add distribution unit tests 13/240813/2
Michal Bloch [Tue, 11 Aug 2020 13:22:59 +0000 (15:22 +0200)]
QoS: add distribution unit tests

Change-Id: I68865ce93bc6435c33ee4774037d4db6eb1af688
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoQoS: split off distributions to a separate file 12/240812/2
Michal Bloch [Tue, 11 Aug 2020 12:59:11 +0000 (14:59 +0200)]
QoS: split off distributions to a separate file

Change-Id: I2f708535940b355e6396eb28b5523752ce8c8872
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoQoS: move file handling out of distribution funcs 11/240811/2
Michal Bloch [Tue, 11 Aug 2020 12:16:30 +0000 (14:16 +0200)]
QoS: move file handling out of distribution funcs

Will allow easier testing for the functions.

Change-Id: Idacc1b8863eb76d87b4b58f8824ce8bcf53cf808
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoAdd a missing check to libdlogutil 02/240802/3
Mateusz Majewski [Tue, 11 Aug 2020 13:16:34 +0000 (15:16 +0200)]
Add a missing check to libdlogutil

Change-Id: Iad79fd6df59cb6c585f45febc23a1263df055111

3 years agoClarify types 80/240780/1
Mateusz Majewski [Tue, 11 Aug 2020 07:50:58 +0000 (09:50 +0200)]
Clarify types

Change-Id: Ie8afc3a9f087b124f5d105a7d0b60fea8587c81d

3 years agoAdd a simple QoS integration test 59/240659/1
Mateusz Majewski [Mon, 10 Aug 2020 10:13:32 +0000 (12:13 +0200)]
Add a simple QoS integration test

Change-Id: I120660d31877b433ebd66fa6717ba3716e2d8a2a

3 years agoFix compilation 86/240586/1 accepted/tizen/unified/20200812.144037 submit/tizen/20200807.162649
Michal Bloch [Fri, 7 Aug 2020 16:17:04 +0000 (18:17 +0200)]
Fix compilation

Can't rely on lenient compilers.

Change-Id: I22ca790c1ee57ec64677e84b4d01ccefe9cadc5d
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoMerge changes from topic "dlog-qos-2020" into tizen submit/tizen/20200807.160246
Karol Lewandowski [Fri, 7 Aug 2020 15:55:33 +0000 (15:55 +0000)]
Merge changes from topic "dlog-qos-2020" into tizen

* changes:
  Release 6.0.14
  daemon: add metrics collection / QoS

3 years agoRelease 6.0.14 84/240584/3
Michal Bloch [Fri, 7 Aug 2020 15:22:05 +0000 (17:22 +0200)]
Release 6.0.14

This release introduces the QoS mode.

Change-Id: I2ef256c186cdc014bb728c7225b61f833dec2a7c
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agodaemon: add metrics collection / QoS 67/240367/11
Michal Bloch [Wed, 5 Aug 2020 21:22:43 +0000 (23:22 +0200)]
daemon: add metrics collection / QoS

Change-Id: I7a6f9fdfd371d453a8f8960b78f0d19262687757
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agolibdlogutil: Increase the wait timeout for receiving fd from dlog_logger 76/240476/3
Karol Lewandowski [Thu, 6 Aug 2020 12:49:46 +0000 (14:49 +0200)]
libdlogutil: Increase the wait timeout for receiving fd from dlog_logger

Default timeout of 500ms is easily exceeded on low-end and/or overloaded
systems, causing dlogutil failures.  This commit bumps the limit to 5s.

Change-Id: Ia7083fef7fa2bd5bf790b9ab0758f9d2b1599823

3 years agometrics: add clear and get_total functions 75/240475/2
Michal Bloch [Thu, 6 Aug 2020 11:55:50 +0000 (13:55 +0200)]
metrics: add clear and get_total functions

Change-Id: Ibebaa85982c013e16fd2be4d0c744f02a4c88f7d
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoAdd fdi_logger.c test 62/240362/2
Agnieszka Baumann [Fri, 31 Jul 2020 13:22:39 +0000 (15:22 +0200)]
Add fdi_logger.c test

Change-Id: I9a5d468c87ecbd8663faf672673019b136e5086f

3 years agoAdd log_storage.c test 41/240241/6
Agnieszka Baumann [Wed, 29 Jul 2020 12:10:07 +0000 (14:10 +0200)]
Add log_storage.c test

Change-Id: Ifd0f0cfb6b20387f7581a903260805d796c809b3

3 years agoAdd dlog_sec_print test 47/240347/2
Agnieszka Baumann [Wed, 22 Jul 2020 16:29:02 +0000 (18:29 +0200)]
Add dlog_sec_print test

Change-Id: I7bc8e3c315fd36919fa0806018f7e35d98d18eb0

3 years agolibdlog: pid based limiter 14/226514/9
Michal Bloch [Mon, 2 Mar 2020 13:11:27 +0000 (14:11 +0100)]
libdlog: pid based limiter

Change-Id: Iac3e9df7cb97f2ce9246e35db4e00708ff684b54
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agometrics: fix a memleak 74/240474/1
Michal Bloch [Thu, 6 Aug 2020 11:55:58 +0000 (13:55 +0200)]
metrics: fix a memleak

Change-Id: Iab097759f8317ed2a39699a1a5a0ab5f33cd895e
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoAndroid logger config readers now aggregated 66/240366/2
Michal Bloch [Wed, 5 Aug 2020 20:28:02 +0000 (22:28 +0200)]
Android logger config readers now aggregated

This should result in a single read() call to populate
multiple /var/log/dlog/x files under the same buffer.

Change-Id: I28428abfda4fcd142f3de95ff61fdf31e2c9cb87
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoAdd a helper function for core Android buffers 69/240469/1
Michal Bloch [Thu, 6 Aug 2020 10:41:42 +0000 (12:41 +0200)]
Add a helper function for core Android buffers

Change-Id: I86fd88f689c651fd03a34b4e636bfc1d9cdd66ac
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoExtract subreader addition 39/240339/3
Michal Bloch [Wed, 5 Aug 2020 20:19:06 +0000 (22:19 +0200)]
Extract subreader addition

Change-Id: Ie3ea31ce4a969cf8fa43ecb32fa8eeb2e678ca8d
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years ago"Move constructors" for cleaner resource handling 64/240364/2
Michal Bloch [Wed, 5 Aug 2020 13:59:20 +0000 (15:59 +0200)]
"Move constructors" for cleaner resource handling

Change-Id: Icbfd6f8e7ccf59060b63a7a73d00eedee74e56ea

3 years agoFix leak / lack of reply on invalid util requests 63/240363/1
Michal Bloch [Wed, 5 Aug 2020 14:43:30 +0000 (16:43 +0200)]
Fix leak / lack of reply on invalid util requests

Change-Id: Ie3dc944f73bed2bbbf1636899fecc071e626195e
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoptrs_list: relicense to MIT 38/240338/1
Michal Bloch [Wed, 5 Aug 2020 12:24:04 +0000 (14:24 +0200)]
ptrs_list: relicense to MIT

Change-Id: I1abc25cbb9fe2c4dc461f3ef2258cf665ea37b4d
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoAdd delay functionality to dlogsend 27/240327/3
Mateusz Majewski [Wed, 5 Aug 2020 09:03:51 +0000 (11:03 +0200)]
Add delay functionality to dlogsend

Change-Id: I7740faeff8fc880205d57bf8f9cbd1d0c6c103a0

3 years agodlog_logger: remove the `reader_any` kitchen sink 03/240303/1
Mateusz Majewski [Tue, 4 Aug 2020 09:35:22 +0000 (11:35 +0200)]
dlog_logger: remove the `reader_any` kitchen sink

Readers for pipe and Android Logger backends are now separate beings.

Change-Id: I334155fd0082144d05d325f9849bad8518375690

3 years agoRemove a global "create reader" backend function 95/240295/1
Mateusz Majewski [Mon, 3 Aug 2020 13:05:16 +0000 (15:05 +0200)]
Remove a global "create reader" backend function

This is a step towards uncoupling the two forms of a reader.

Change-Id: I8cc4ed66a5b8a9acfd7f67d89bfaac7318206c1d

3 years agodaemon: split util commandline parsing 68/239668/3
Michal Bloch [Tue, 28 Jul 2020 20:49:03 +0000 (22:49 +0200)]
daemon: split util commandline parsing

Change-Id: Id8154e0090b1be067e2b2799d110fb4750ab531a

3 years agodaemon: logger reader: move file handling to a sub 66/239666/5
Michal Bloch [Tue, 28 Jul 2020 16:33:54 +0000 (18:33 +0200)]
daemon: logger reader: move file handling to a sub

No logic change so far; in the future this will allow to attach a bunch of
sub-readers to a single reader so as to make them work off a single log
entry point (meaning just one read() syscall will feed everything related
to given device - all /var/log/dlog/x files and, in the future, metrics).

Change-Id: I3bdc70838b0e690e17e7ea3bd220c5d8ca4b87ac
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoAdd logprint.c test 08/240208/1
Agnieszka Baumann [Wed, 29 Jul 2020 10:23:25 +0000 (12:23 +0200)]
Add logprint.c test

Change-Id: Ic89d866d94b701d71b26196a939f739c2e9e5f25

3 years agopackaging: Drop no longer valid mention of Apache2.0 license for libdlog-devel 25/240125/1
Karol Lewandowski [Mon, 3 Aug 2020 22:19:38 +0000 (00:19 +0200)]
packaging: Drop no longer valid mention of Apache2.0 license for libdlog-devel

Change-Id: I1151ef586a7c05755bcb041125a81f49e1f8848d

3 years agoMerge "packaging: Split binaries to different packages" into tizen
Karol Lewandowski [Mon, 3 Aug 2020 22:17:18 +0000 (22:17 +0000)]
Merge "packaging: Split binaries to different packages" into tizen

3 years agoMerge "packaging: Drop unused epoch" into tizen
Karol Lewandowski [Mon, 3 Aug 2020 22:17:01 +0000 (22:17 +0000)]
Merge "packaging: Drop unused epoch" into tizen

3 years agolibdlog: apply MIT license; clarify license confusion 15/240115/4
Michal Bloch [Mon, 3 Aug 2020 13:01:09 +0000 (15:01 +0200)]
libdlog: apply MIT license; clarify license confusion

In multiple places, the copyright of The Android Open Source Project
was mistakenly added (due to lazy copy-paste) or wasn't removed when
relevant code got replaced.

Specifically:

 * the entirety of `translate_syslog.c`, `parsers.c` were written
   in commit dd125c915efd411ac20229ce15f9c63a298384e3, as was the
   syslog related stuff inside `queued_entry.c`

 * `parse_kmsg_message` from `queued_entry.c` was written in
    commit 4425f7c497d5c79ee94baa335c6f4938d2fa0d43, back then
    under the name `parse_entry_raw`.

 * `parse androidlogger_message` can't avoid similarity to the OG
   code from Android because a lot of it is just copying from
   member fields (specification is not copyrightable), but as far
   as I can tell it was actually written mostly from scratch (see
   commit 4188ddaff9cb28c1865b23a94738653382091962) and copying
   from specific fields readded independently later in commit
   00320e1655ac0f31f743be76a866fedf2b540901.

 * in `logcommon.c` there is a lot of pipe related stuff which is
   split over a ton of refactoring commits, but is obviously all
   Samsung if you take a glance at 2015 commits and the state of
   the repo before adding the pipe backend.

 * in `logcommon.c` there's also a lot of miscellaneous chaff whose
   authorship maps fairly well to what `git blame` says.

 * in `logcommon.c` there's the function `filter_pri_to_char`,
   which is technically original Android code but it is so trivial
   that it is really nothing more than its own specification, so
   it shouldn't cause any legal issues. (The opposite function,
   `filter_char_to_pri`, was rewritten in f7b5ee04e80c53a090c9.)

Change-Id: Ibc6cccdcf06588b7c9a431c3113e77b92e58947a
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agopackaging: Split binaries to different packages 19/240119/1
Karol Lewandowski [Mon, 3 Aug 2020 13:47:42 +0000 (15:47 +0200)]
packaging: Split binaries to different packages

Various files are licensed differently, move these around so that
whole package is under one license for clarity.

Change-Id: I47a7c8344926dbf16f9a3b44dbafc999b466e5d5

3 years agopackaging: Drop unused epoch 18/240118/1
Karol Lewandowski [Mon, 3 Aug 2020 13:44:17 +0000 (15:44 +0200)]
packaging: Drop unused epoch

Change-Id: I5fed7483748738e39654bc73a135a7898b986f08

3 years agoFix memory leak 04/240104/1
Yunmi Ha [Mon, 3 Aug 2020 10:07:37 +0000 (19:07 +0900)]
Fix memory leak

Change-Id: Ic7bb29c716b64c41677e16277472e1eb10f3f1c3
Signed-off-by: Yunmi Ha <yunmi.ha@samsung.com>
3 years agoAdd deduplication feature to libdlog 90/236090/10
Agnieszka Baumann [Fri, 12 Jun 2020 18:41:00 +0000 (20:41 +0200)]
Add deduplication feature to libdlog

Change-Id: I5788d957d2a8c5e19683512fa4cbed55caf68f7d

3 years agoAdd PoC dlogmetrics utility 85/226085/11
Mateusz Majewski [Mon, 24 Feb 2020 12:38:30 +0000 (13:38 +0100)]
Add PoC dlogmetrics utility

Change-Id: I3be403459ea5f494fb1749a085546f66d6543513

3 years agoAdd metrics structure 91/225791/11
Mateusz Majewski [Fri, 21 Feb 2020 13:46:01 +0000 (14:46 +0100)]
Add metrics structure

Change-Id: Iff76a4e86519f5a03517b69934ef6341825ecca8

3 years agoRelease 6.0.13 02/239902/1 accepted/tizen/unified/20200731.145722 submit/tizen/20200730.122517
Michal Bloch [Thu, 30 Jul 2020 11:02:21 +0000 (13:02 +0200)]
Release 6.0.13

This release finalizes the new internal libdlogutil API.

Change-Id: Iccdd1dbb474e5c2d7246c5c525c9e2f308d7d17e
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agodlog_logger: pseudo-RAII for getopt innards 67/239667/3
Michal Bloch [Tue, 28 Jul 2020 20:32:30 +0000 (22:32 +0200)]
dlog_logger: pseudo-RAII for getopt innards

So that we don't have to do caveman tier `retval = X; goto cleanup`

Change-Id: I993023ec95a1a38d3b3565aa174cbd82e422e0b9
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agodlog_logger: move fields to reader child classes 65/239665/3
Michal Bloch [Tue, 28 Jul 2020 14:46:46 +0000 (16:46 +0200)]
dlog_logger: move fields to reader child classes

Makes the generic reader struct less of a kitchen sink.

Change-Id: I57fca12ae9439c22e0c95afb41d5ef8478a6cbf0
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoMove loglimiter to shared 17/239717/1
Mateusz Majewski [Wed, 29 Jul 2020 06:54:17 +0000 (08:54 +0200)]
Move loglimiter to shared

After all, it is shared between libdlog and dlogctl.

Change-Id: I34b08f935e4eacbae3f505e08214432aaee84720

3 years agodlog_logger: further reader refactors 13/239613/6
Mateusz Majewski [Mon, 27 Jul 2020 18:15:17 +0000 (20:15 +0200)]
dlog_logger: further reader refactors

Split into pipe and logger variants.

Change-Id: Iabe20b812752085f12c9e4d0ed32ebd0cd5a57a3

3 years agodaemon: handle epoll callback pointers sensibly 68/239568/2
Michal Bloch [Mon, 27 Jul 2020 17:16:53 +0000 (19:16 +0200)]
daemon: handle epoll callback pointers sensibly

The event can now carry userdata to point to the needed structure directly.
No more "keep fd_entity in front of the struct" or offset calculating nonsense.

Change-Id: I9d7d565d86538931f26a63ce35b6d0bb5947f228
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoExpand "invalid buffer" negative integration tests 28/239528/1
Michal Bloch [Mon, 27 Jul 2020 09:54:45 +0000 (11:54 +0200)]
Expand "invalid buffer" negative integration tests

Change-Id: Ief8deb05aa03f84e393651a980bdec2a0b4731b0
Signed-off-by: Michal Bloch <m.bloch@samsung.com>
3 years agoAdd some missing checks to libdlogutil 87/239487/1
Mateusz Majewski [Mon, 27 Jul 2020 05:45:47 +0000 (07:45 +0200)]
Add some missing checks to libdlogutil

Change-Id: I178e0f1381302ac36dc5740b168e5faf8fafc9fa

3 years agoFix documentation 23/239423/1
Mateusz Majewski [Wed, 15 Jul 2020 12:11:32 +0000 (14:11 +0200)]
Fix documentation

Change-Id: I6660076300808d80a3b3323737e82f810481dd4c