commit | f68bd6628e85630dbaec98f944f33e370426be09 | [log] [tgz] |
---|---|---|
author | pigweed-integration-roller <pigweed-integration-roller@pigweed.google.com.iam.gserviceaccount.com> | Fri Sep 03 17:33:48 2021 +0000 |
committer | CQ Bot Account <pigweed-scoped@luci-project-accounts.iam.gserviceaccount.com> | Fri Sep 03 18:01:36 2021 +0000 |
tree | ad41e7e791c183077c9fa587d642c8e564301fc0 | |
parent | 25dd4c5e57b324e5d2282f2e98ab2199bceb004f [diff] |
[roll third_party/pigweed] pw_log_rpc: Create Log RPC service & streams An RpcLogStream matches a Multisink::Drain with an RPC writer and is identified by the RPC channel ID. A persistent log stream can be created by assigning an open writer to the RpcLogStream, or can be set when the stream is inactive by the RPC Log service. A map is provided to collect all log streams, persistent and dynamic. It makes it easy to assign a writer to a log stream, or to flush all the log streams. Flushing is delegated to whatever owns the log stream map. Included is a single thread, single Multisink::Listener that sequentially flushes the log streams. Future work can make use of a work queue. Test: sample app using raw strings log entries works with pw_console calling: ```for payload in rpcs.pw.log.LogService.Listen.invoke(): for entry in payload.entries: LOG.info("%s", entry.message)``` Original-Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/pigweed/+/56001 https://pigweed.googlesource.com/pigweed/pigweed third_party/pigweed Rolled-Commits: 505be03e3b3729f..5e645b2d2671d7f Roller-URL: https://ci.chromium.org/b/8837091003655514529 Cq-Cl-Tag: roller-builder:pigweed-experimental-roller Cq-Cl-Tag: roller-bid:8837091003655514529 CQ-Do-Not-Cancel-Tryjobs: true Change-Id: Ia4c703b1dc71b41f37439b2d3e76e135c5b6507d Reviewed-on: https://pigweed-review.googlesource.com/c/pigweed/experimental/+/59781 Bot-Commit: Pigweed Integration Roller <pigweed-integration-roller@pigweed.google.com.iam.gserviceaccount.com> Commit-Queue: Pigweed Integration Roller <pigweed-integration-roller@pigweed.google.com.iam.gserviceaccount.com>
This repository contains experimental pigweed modules.
Clone this repo with --recursive
to get all required submodules.
git clone --recursive https://pigweed.googlesource.com/pigweed/experimental
This will pull the Pigweed source repository into third_party/pigweed
. If you already cloned but forgot to --recursive
run git submodule update --init
to pull all submodules.