| # Copyright (C) 2019 The Android Open Source Project |
| # |
| # Licensed under the Apache License, Version 2.0 (the "License"); |
| # you may not use this file except in compliance with the License. |
| # You may obtain a copy of the License at |
| # |
| # http://www.apache.org/licenses/LICENSE-2.0 |
| # |
| # Unless required by applicable law or agreed to in writing, software |
| # distributed under the License is distributed on an "AS IS" BASIS, |
| # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. |
| # See the License for the specific language governing permissions and |
| # limitations under the License. |
| |
| # proto-message: TraceConfig |
| |
| # Enable periodic flushing of the trace buffer into the output file. |
| write_into_file: true |
| |
| # Writes the userspace buffer into the file every 2.5 seconds. |
| file_write_period_ms: 2500 |
| |
| # See b/126487238 - we need to guarantee ordering of events. |
| flush_period_ms: 30000 |
| |
| # The trace buffers needs to be big enough to hold |file_write_period_ms| of |
| # trace data. The trace buffer sizing depends on the number of trace categories |
| # enabled and the device activity. |
| |
| # RSS events |
| buffers { |
| size_kb: 16384 |
| fill_policy: RING_BUFFER |
| } |
| |
| # procfs polling |
| buffers { |
| size_kb: 8192 |
| fill_policy: RING_BUFFER |
| } |
| |
| data_sources { |
| config { |
| name: "linux.ftrace" |
| target_buffer: 0 |
| ftrace_config { |
| # These parameters affect only the kernel trace buffer size and how |
| # frequently it gets moved into the userspace buffer defined above. |
| buffer_size_kb: 16384 |
| drain_period_ms: 250 |
| |
| # We need to do process tracking to ensure kernel ftrace events targeted at short-lived |
| # threads are associated correctly |
| ftrace_events: "task/task_newtask" |
| ftrace_events: "task/task_rename" |
| ftrace_events: "sched/sched_process_exit" |
| ftrace_events: "sched/sched_process_free" |
| |
| # Memory events |
| ftrace_events: "rss_stat" |
| ftrace_events: "ion_heap_shrink" |
| ftrace_events: "ion_heap_grow" |
| ftrace_events: "ion/ion_stat" |
| ftrace_events: "oom_score_adj_update" |
| |
| # Old (kernel) LMK |
| ftrace_events: "lowmemorykiller/lowmemory_kill" |
| |
| # New (userspace) LMK |
| atrace_apps: "lmkd" |
| # Added for userspace annotation in the platform scenario test app |
| atrace_apps: "android.platform.test.scenario" |
| |
| atrace_categories: "am" |
| } |
| } |
| } |
| |
| data_sources { |
| config { |
| name: "linux.process_stats" |
| target_buffer: 1 |
| process_stats_config { |
| proc_stats_poll_ms: 10000 |
| proc_stats_cache_ttl_ms: 60000 |
| } |
| } |
| } |
| |
| data_sources { |
| config { |
| name: "linux.sys_stats" |
| target_buffer: 1 |
| sys_stats_config { |
| meminfo_period_ms: 1000 |
| meminfo_counters: MEMINFO_MEM_TOTAL |
| meminfo_counters: MEMINFO_MEM_FREE |
| meminfo_counters: MEMINFO_MEM_AVAILABLE |
| meminfo_counters: MEMINFO_BUFFERS |
| meminfo_counters: MEMINFO_CACHED |
| meminfo_counters: MEMINFO_SWAP_CACHED |
| meminfo_counters: MEMINFO_ACTIVE |
| meminfo_counters: MEMINFO_INACTIVE |
| meminfo_counters: MEMINFO_ACTIVE_ANON |
| meminfo_counters: MEMINFO_INACTIVE_ANON |
| meminfo_counters: MEMINFO_ACTIVE_FILE |
| meminfo_counters: MEMINFO_INACTIVE_FILE |
| meminfo_counters: MEMINFO_UNEVICTABLE |
| meminfo_counters: MEMINFO_SWAP_TOTAL |
| meminfo_counters: MEMINFO_SWAP_FREE |
| meminfo_counters: MEMINFO_DIRTY |
| meminfo_counters: MEMINFO_WRITEBACK |
| meminfo_counters: MEMINFO_ANON_PAGES |
| meminfo_counters: MEMINFO_MAPPED |
| meminfo_counters: MEMINFO_SHMEM |
| } |
| } |
| } |