New issue
Advanced search Search tips

Issue 692245 link

Starred by 1 user

Issue metadata

Status: Fixed
Owner:
Closed: Mar 2017
Components:
EstimatedDays: ----
NextAction: ----
OS: ----
Pri: 1
Type: Feature

Blocked on:
issue 692217
issue 692220



Sign in to add a comment

go full logdog

Project Member Reported by no...@chromium.org, Feb 14 2017

Issue description

send all build logs to logdog. No build logs in swarming

do it in three phases
1. kitchen: start streaming all build logs and annotations to logdog, depends on  bug 692217 . This includes emitting initial properties to the annotation stream by recipe engine.
2. milo: load annotations from logdog:  bug 692220 
3. kitchen: stop sending build logs to stdout. Remove artificial bootstrap step annotations. Kitchen's stdout no longer has to be valid annotations. In case of an error, dump as much info to stdout as possible for diagnostic purposes
 

Comment 1 by no...@chromium.org, Feb 14 2017

Labels: -Type-Bug Type-Feature
Project Member

Comment 3 by bugdroid1@chromium.org, Feb 18 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/external/github.com/luci/luci-go.git/+/842542a505b380cc816b217cdb642ecdfac922d2

commit 842542a505b380cc816b217cdb642ecdfac922d2
Author: dnj <dnj@chromium.org>
Date: Sat Feb 18 19:50:33 2017

LogDog: Implement StreamName.Split.

Implement StreamName.Split, which splits a StreamName into its last
(right-most) element and its base element.

BUG= chromium:692245 
TEST=unit

Review-Url: https://codereview.chromium.org/2699943004

[modify] https://crrev.com/842542a505b380cc816b217cdb642ecdfac922d2/logdog/common/types/streamname.go
[modify] https://crrev.com/842542a505b380cc816b217cdb642ecdfac922d2/logdog/common/types/streamname_test.go

Project Member

Comment 4 by bugdroid1@chromium.org, Feb 19 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/infra/infra/+/3d15b37154265c5c8ff11aaaa0c8db8151672498

commit 3d15b37154265c5c8ff11aaaa0c8db8151672498
Author: Dan Jacques <dnj@chromium.org>
Date: Sun Feb 19 07:34:10 2017

Roll luci-go.

infra/go/src/github.com/luci/luci-go:
842542a5 LogDog: Implement StreamName.Split.
83c79129 Annotee: Allow annotation subpath to be specified.
fc6bd8a8 milo: Add SwarmBucket templating.
c0b973a0 auth: Add 'authutil context' subcommand.
2f8f86db auth: Add WithLocalAuth function to setup an environment with
local auth.
5026db52 auth: TokenGenerator implementation on top of
auth.Authenticator.
b4b0162a auth: Add server implementation of LUCI_CONTEXT local_auth
protocol.
22e35a85 Annotee: Preserve leading spaces from annotations.
71936d23 tsmon: Add '-ts-mon-act-as' option for impersonating prodx
accounts.
01ade3ab Kill the correct session when relogining.
91476702 auth: Implement service account actor mode in common/auth.
0118a73d milo: Enable Swarming LogDog log loading.
ddca4ffe Fix LogDog client queries without state.
d877e6ad luci_deploy: Remove "preview" tag.
b8b36b4c Milo: Change 'Running' favicon from teal to yellow
78270383 Get rid of auth.Token struct, use oauth2.Token from
"golang.org/x/oauth2".
352a620e common/auth: Extract LoginMode handling code into a separate
function.
4d6716e1 [cipd] Add warning logs when losing attrubute data.
1c98f34e [cipd] bump user agent version
147607f9 [cipd] Add support for windows file attributes.
eafeaabc [cipd] allow PackageDefinition to specify absolute Root
5203b4f1 token-server: Bump GAE instance class.
3095c509 Fix-up LogDog services for deployment.
921b5100 Milo: Favicons for build and builder pages.
e5aca549 Accommodate Swarming try number into log stream.
79001dde buildbucket: move swarmbucket tools to buildbucket binary
3abae09d Use "golang.org/x/net/context", not "context"

BUG= chromium:692245 
TEST=None

Change-Id: I31dd2bbbccf5092c80fc11ee2fc5b0beddec2b78
Reviewed-on: https://chromium-review.googlesource.com/445005
Reviewed-by: Nodir Turakulov <nodir@chromium.org>
Commit-Queue: Daniel Jacques <dnj@chromium.org>

[modify] https://crrev.com/3d15b37154265c5c8ff11aaaa0c8db8151672498/DEPS

Comment 5 by no...@chromium.org, Feb 19 2017

Status: Started (was: Assigned)
Project Member

Comment 6 by bugdroid1@chromium.org, Feb 21 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/infra/infra/+/61ee0b31840b464ea1137ae34968cff740325ab3

commit 61ee0b31840b464ea1137ae34968cff740325ab3
Author: Dan Jacques <dnj@chromium.org>
Date: Tue Feb 21 19:10:46 2017

Kitchen: Simplify LogDog, enable LogDog-only Mode.

Remove a lot of the configuration potential from Kitchen's LogDog
implementation. It now has two modes:

- LogDog-only, where ALL recipe streams are sent exclusively through
  LogDog and nothing but logs and keep-alives are written to Kitchen's
  output pipes.
- Tee (default), where all streams are sent through LogDog, but STDOUT
  and STDERR are still tee'd through Kitchen.

Annotee is now always enabled. We can disable this in the future in
favor of recipe engine-side LogDog streaming entirely within Kitchen.

The LogDog host/project/prefix and annotation stream name are now specified
through URL field called "logdog-annotation-url". This URL will have
SwarmBucket templating applied, enabling substitution if specified. The
LogDog stream host, project, and prefix will be derived from this field.

This changes the LogDog flags available, and will require updates to
Swarming task templates after landing.

BUG= chromium:692245 
TEST=local

Change-Id: I1607e9bc1a4020a787d4e7bde6045463884ebc5a
Reviewed-on: https://chromium-review.googlesource.com/444455
Commit-Queue: Daniel Jacques <dnj@chromium.org>
Reviewed-by: Nodir Turakulov <nodir@chromium.org>

[modify] https://crrev.com/61ee0b31840b464ea1137ae34968cff740325ab3/go/src/infra/tools/kitchen/cook.go
[modify] https://crrev.com/61ee0b31840b464ea1137ae34968cff740325ab3/go/src/infra/tools/kitchen/cook_logdog_test.go
[modify] https://crrev.com/61ee0b31840b464ea1137ae34968cff740325ab3/go/src/infra/tools/kitchen/cook_logdog.go

Project Member

Comment 7 by bugdroid1@chromium.org, Feb 21 2017

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/f2ebc905f3eeb429c91ce7dd7abf7b7de5bdfa4b

commit f2ebc905f3eeb429c91ce7dd7abf7b7de5bdfa4b
Author: Nodir Turakulov <nodir@google.com>
Date: Tue Feb 21 20:35:21 2017

Comment 8 by no...@chromium.org, Feb 22 2017

Labels: luci
Project Member

Comment 9 by bugdroid1@chromium.org, Feb 23 2017

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/3c2afe20bd73386cc4b93b4dd656e504990e12b2

commit 3c2afe20bd73386cc4b93b4dd656e504990e12b2
Author: Nodir Turakulov <nodir@google.com>
Date: Thu Feb 23 01:30:17 2017

Project Member

Comment 10 by bugdroid1@chromium.org, Feb 23 2017

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/7aa13ca874d0c4b89270a11c2cf105a99a227444

commit 7aa13ca874d0c4b89270a11c2cf105a99a227444
Author: Nodir Turakulov <nodir@google.com>
Date: Thu Feb 23 17:27:58 2017

Project Member

Comment 11 by bugdroid1@chromium.org, Feb 23 2017

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/7aa13ca874d0c4b89270a11c2cf105a99a227444

commit 7aa13ca874d0c4b89270a11c2cf105a99a227444
Author: Nodir Turakulov <nodir@google.com>
Date: Thu Feb 23 17:27:58 2017

Project Member

Comment 12 by bugdroid1@chromium.org, Feb 23 2017

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/41cbb14d6805850655900c9a6f0ce633fc08ccc4

commit 41cbb14d6805850655900c9a6f0ce633fc08ccc4
Author: Nodir Turakulov <nodir@google.com>
Date: Thu Feb 23 20:34:43 2017

Project Member

Comment 13 by bugdroid1@chromium.org, Feb 24 2017

The following revision refers to this bug:
  https://chromium.googlesource.com/external/github.com/luci/luci-go.git/+/887de917e6e7d48a151293fd298d22519c86b6af

commit 887de917e6e7d48a151293fd298d22519c86b6af
Author: dnj <dnj@chromium.org>
Date: Fri Feb 24 03:38:40 2017

Milo: Handle missing / transient LogDog failures.

If a build is labelled as having a LogDog stream, Milo will
unconditionally try and load that stream. This falls apart if the build
has either not started yet, or if the LogDog annotation stream is not
available due to natural ingest delay.

This will prevent stream loading if the build hasn't started yet, and
will retry LogDog transient and not-found errors prior to failing
absolutely.

BUG= chromium:692245 ,  chromium:694913 
TEST=None
R=hinoka@chromium.org, nodir@chromium.org

Review-Url: https://codereview.chromium.org/2717623002

[modify] https://crrev.com/887de917e6e7d48a151293fd298d22519c86b6af/logdog/common/types/streamaddr.go
[add] https://crrev.com/887de917e6e7d48a151293fd298d22519c86b6af/milo/appengine/frontend/expectations/bootstrap-swarming.TestableBuild-build-pending-logdog.html
[add] https://crrev.com/887de917e6e7d48a151293fd298d22519c86b6af/milo/appengine/frontend/expectations/bootstrap-swarming.TestableBuild-build-running-logdog-no-annotation-stream.html
[add] https://crrev.com/887de917e6e7d48a151293fd298d22519c86b6af/milo/appengine/frontend/expectations/buildbot-swarming.TestableBuild-build-pending-logdog.html
[add] https://crrev.com/887de917e6e7d48a151293fd298d22519c86b6af/milo/appengine/frontend/expectations/buildbot-swarming.TestableBuild-build-running-logdog-no-annotation-stream.html
[modify] https://crrev.com/887de917e6e7d48a151293fd298d22519c86b6af/milo/appengine/logdog/build.go
[modify] https://crrev.com/887de917e6e7d48a151293fd298d22519c86b6af/milo/appengine/logdog/http.go
[modify] https://crrev.com/887de917e6e7d48a151293fd298d22519c86b6af/milo/appengine/swarming/build.go
[add] https://crrev.com/887de917e6e7d48a151293fd298d22519c86b6af/milo/appengine/swarming/expectations/build-pending-logdog.json
[add] https://crrev.com/887de917e6e7d48a151293fd298d22519c86b6af/milo/appengine/swarming/expectations/build-running-logdog-no-annotation-stream.json
[modify] https://crrev.com/887de917e6e7d48a151293fd298d22519c86b6af/milo/appengine/swarming/html_data.go
[add] https://crrev.com/887de917e6e7d48a151293fd298d22519c86b6af/milo/appengine/swarming/testdata/build-pending-logdog.swarm
[add] https://crrev.com/887de917e6e7d48a151293fd298d22519c86b6af/milo/appengine/swarming/testdata/build-running-logdog-no-annotation-stream.swarm

Project Member

Comment 14 by bugdroid1@chromium.org, Feb 24 2017

The following revision refers to this bug:
  https://chrome-internal.googlesource.com/infradata/config/+/c485595e4ec913aecaef893d4911e94729f57ee0

commit c485595e4ec913aecaef893d4911e94729f57ee0
Author: Nodir Turakulov <nodir@google.com>
Date: Fri Feb 24 15:22:04 2017

Comment 15 by no...@chromium.org, Mar 27 2017

Status: Fixed (was: Started)

Sign in to add a comment