blob: 25104eb63ab341bb3d0f531ad3e92a7660f0bb72 [file] [log] [blame]
Mark Salyzyndf5d1282016-07-07 09:24:51 -07001#
2# init scriptures for logcatd persistent logging.
3#
4# Make sure any property changes are only performed with /data mounted, after
5# post-fs-data state because otherwise behavior is undefined. The exceptions
6# are device adjustments for logcatd service properties (persist.* overrides
Tian, Baofeng00813a52019-05-21 11:19:12 +08007# notwithstanding) for logd.logpersistd.size logd.logpersistd.rotate_kbytes and
8# logd.logpersistd.buffer.
Mark Salyzyndf5d1282016-07-07 09:24:51 -07009
10# persist to non-persistent trampolines to permit device properties can be
11# overridden when /data mounts, or during runtime.
Tian, Baofeng00813a52019-05-21 11:19:12 +080012on property:persist.logd.logpersistd.count=*
13 # expect /init to report failure if property empty (default)
14 setprop persist.logd.logpersistd.size ${persist.logd.logpersistd.count}
15
Mark Salyzyndf5d1282016-07-07 09:24:51 -070016on property:persist.logd.logpersistd.size=256
17 setprop persist.logd.logpersistd.size ""
18 setprop logd.logpersistd.size ""
19
20on property:persist.logd.logpersistd.size=*
21 # expect /init to report failure if property empty (default)
22 setprop logd.logpersistd.size ${persist.logd.logpersistd.size}
23
Tian, Baofeng00813a52019-05-21 11:19:12 +080024on property:persist.logd.logpersistd.rotate_kbytes=1024
25 setprop persist.logd.logpersistd.rotate_kbytes ""
26 setprop logd.logpersistd.rotate_kbytes ""
27
28on property:persist.logd.logpersistd.rotate_kbytes=*
29 # expect /init to report failure if property empty (default)
30 setprop logd.logpersistd.rotate_kbytes ${persist.logd.logpersistd.rotate_kbytes}
31
Mark Salyzyndf5d1282016-07-07 09:24:51 -070032on property:persist.logd.logpersistd.buffer=all
33 setprop persist.logd.logpersistd.buffer ""
34 setprop logd.logpersistd.buffer ""
35
36on property:persist.logd.logpersistd.buffer=*
37 # expect /init to report failure if property empty (default)
38 setprop logd.logpersistd.buffer ${persist.logd.logpersistd.buffer}
39
Tom Cherry20391b12015-08-14 13:02:51 -070040on property:persist.logd.logpersistd=logcatd
Mark Salyzyndf5d1282016-07-07 09:24:51 -070041 setprop logd.logpersistd logcatd
42
43# enable, prep and start logcatd service
44on load_persist_props_action
45 setprop logd.logpersistd.enable true
46
47on property:logd.logpersistd.enable=true && property:logd.logpersistd=logcatd
Tom Cherry20391b12015-08-14 13:02:51 -070048 # all exec/services are called with umask(077), so no gain beyond 0700
49 mkdir /data/misc/logd 0700 logd log
Tom Cherry20391b12015-08-14 13:02:51 -070050 start logcatd
51
Mark Salyzyndf5d1282016-07-07 09:24:51 -070052# stop logcatd service and clear data
53on property:logd.logpersistd.enable=true && property:logd.logpersistd=clear
54 setprop persist.logd.logpersistd ""
Mark Salyzyn2d737012016-06-06 11:22:13 -070055 stop logcatd
56 # logd for clear of only our files in /data/misc/logd
Mark Salyzyndf5d1282016-07-07 09:24:51 -070057 exec - logd log -- /system/bin/logcat -c -f /data/misc/logd/logcat -n ${logd.logpersistd.size:-256}
58 setprop logd.logpersistd ""
Mark Salyzyn2d737012016-06-06 11:22:13 -070059
Mark Salyzyndf5d1282016-07-07 09:24:51 -070060# stop logcatd service
61on property:logd.logpersistd=stop
62 setprop persist.logd.logpersistd ""
Mark Salyzyn2d737012016-06-06 11:22:13 -070063 stop logcatd
Mark Salyzyndf5d1282016-07-07 09:24:51 -070064 setprop logd.logpersistd ""
Mark Salyzyn2d737012016-06-06 11:22:13 -070065
Mark Salyzyndf5d1282016-07-07 09:24:51 -070066on property:logd.logpersistd.enable=false
67 stop logcatd
68
69# logcatd service
Tian, Baofeng00813a52019-05-21 11:19:12 +080070service logcatd /system/bin/logcatd -L -b ${logd.logpersistd.buffer:-all} -v threadtime -v usec -v printable -D -f /data/misc/logd/logcat -r ${logd.logpersistd.rotate_kbytes:-1024} -n ${logd.logpersistd.size:-256} --id=${ro.build.id}
Tom Cherry20391b12015-08-14 13:02:51 -070071 class late_start
72 disabled
73 # logd for write to /data/misc/logd, log group for read from log daemon
74 user logd
75 group log
Tom Cherry984bd832015-09-21 14:25:34 -070076 writepid /dev/cpuset/system-background/tasks
Mark Salyzyn30ea96e2017-05-30 09:01:38 -070077 oom_score_adjust -600