enhancements icon indicating copy to clipboard operation
enhancements copied to clipboard

Deprecate klog specific flags in Kubernetes components

Open serathius opened this issue 4 years ago • 31 comments

Enhancement Description

  • One-line enhancement description (can be used as a release note): Deprecate klog specific flags in Kubernetes components

  • Kubernetes Enhancement Proposal: https://github.com/kubernetes/enhancements/blob/master/keps/sig-instrumentation/2845-deprecate-klog-specific-flags-in-k8s-components/README.md

  • Discussion Link: https://groups.google.com/g/kubernetes-dev/c/dAzHAdxe6ok

  • Primary contact (assignee): serathius

  • Responsible SIGs: sig-instrumentation, sig-arch

  • Enhancement target (which target equals to which milestone):

    • Alpha release target (x.y): 1.23
    • Beta release target (x.y): 1.24
    • Stable release target (x.y):
  • [x] Alpha

    • [x] KEP (k/enhancements) update PR(s): https://github.com/kubernetes/enhancements/pull/2846 https://github.com/kubernetes/enhancements/pull/2912
    • [x] Code (k/k) update PR(s):
      • [x] Klog can be configured without registering flags @pohly
        • https://github.com/kubernetes/kubernetes/pull/105539
        • https://github.com/kubernetes/kubernetes/pull/105076
      • [x] Kubernetes logging configuration drops global state @pohly
        • https://github.com/kubernetes/kubernetes/issues/99265
      • [x] Go-runner is feature complementary to klog flags planned for deprecation @serathius
      • [x] Projects in Kubernetes Org are migrated to go-runner @serathius
        • https://github.com/kubernetes/kubernetes/issues/106050 (all important projects were migrated)
      • [x] JSON logs format splits stdout and stderr logs
        • https://github.com/kubernetes/kubernetes/pull/104873
    • [x] Docs (k/website) update PR(s): https://github.com/kubernetes/website/pull/30505
  • [x] Beta

    • [x] KEP (k/enhancements) update PR(s):
      • [x] Go-runner project is well maintained and documented
    • [x] Code (k/k) update PR(s):
      • https://github.com/kubernetes/kubernetes/pull/105042
    • [x] Docs (k/website) update(s):
      • [x] Documentation on migrating off klog flags is publicly available

serathius avatar Jul 30 '21 12:07 serathius

/sig arch /sig instrumentation /wg structured-logging

serathius avatar Jul 30 '21 12:07 serathius

@serathius: The label(s) sig/arch cannot be applied, because the repository doesn't have them.

In response to this:

/sig arch /sig instrumentation /wg structured-logging

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository.

k8s-ci-robot avatar Jul 30 '21 12:07 k8s-ci-robot

/sig architecture /milestone v1.23

serathius avatar Jul 30 '21 14:07 serathius

Hi @serathius! 1.23 Enhancements team here. Just checking in as we approach enhancements freeze on Thursday 09/09. Here's where this enhancement currently stands:

  • [X] KEP file using the latest template has been merged into the k/enhancements repo (PR Open).
  • [X] KEP status is marked as implementable
  • [X] KEP has a test plan section filled out.
  • [X] KEP has up to date graduation criteria.
  • [x] KEP has a production readiness review that has been completed and merged into k/enhancements (PR Open).

~Looks like for this one we would just need the KEP (#2912) merge by enhancements freeze :)~

All good now!

Thanks!

kevindelgado avatar Sep 03 '21 21:09 kevindelgado

/stage alpha

kevindelgado avatar Sep 03 '21 21:09 kevindelgado

/tracked yes

kevindelgado avatar Sep 03 '21 21:09 kevindelgado

Hi @serathius

Ping! As a reminder your PR (#2912 ) needs to merge by EOD PST tomorrow September 9th to be included in the 1.23 Release. After that time you will need to request an exception.

Lmk if you need anything, Kevin

kevindelgado avatar Sep 08 '21 18:09 kevindelgado

Hi @serathius :wave: 1.23 Docs shadow here.

This enhancement is marked as 'Needs Docs' for the 1.23 release.

Please follow the steps detailed in the documentation to open a PR against the dev-1.23 branch in the k/website repo. This PR can be just a placeholder at this time and must be created before Thu November 18, 11:59 PM PDT.

Also, if needed take a look at Documenting for a release to familiarize yourself with the docs requirement for the release.

Thanks!

mehabhalodiya avatar Sep 18 '21 10:09 mehabhalodiya

@pohly I have split Alpha work by milestones. I have assigned to you

  • Klog can be configured without registering flags
  • Kubernetes logging configuration drops global state

Please confirm and let me know when you will have PR for them.

serathius avatar Nov 01 '21 15:11 serathius

Marked "Klog can be configured without registering flags" as resolved as technically https://github.com/kubernetes/kubernetes/pull/105076 moved klog flag registration into component-base allowing us to register only flags we want.

serathius avatar Nov 01 '21 15:11 serathius

@pohly I have split Alpha work by milestones. I have assigned to you

* Klog can be configured without registering flags

* Kubernetes logging configuration drops global state

Please confirm

That's okay. As discussed in https://kubernetes.slack.com/archives/C020CCMUEAX/p1635445845031900, both will be solved by adding fields for -v and -vmodule to LoggingConfiguration. Those two fields then can be set without having to use command line flags (first line item) and the configuration can be passed around before being applied (second line item).

pohly avatar Nov 01 '21 20:11 pohly

/assign

pohly avatar Nov 02 '21 21:11 pohly

Hi @pohly 👋

Checking in once more as we approach 1.23 code freeze at 6:00 pm PST on Tuesday, November 16.

Please ensure the following items are completed:

  • All PRs to the Kubernetes repo that are related to your enhancement are linked in the above issue description (for tracking purposes).
  • All PRs are fully merged by the code freeze deadline.
  • Have a documentation placeholder PR open by Thursday, November 18.

As always, we are here to help should questions come up.

Thanks!!

kevindelgado avatar Nov 08 '21 17:11 kevindelgado

Docs PR for 1.23: https://github.com/kubernetes/website/pull/30505

pohly avatar Nov 16 '21 15:11 pohly

All code PRs are merged, only docs PR remains.

pohly avatar Nov 16 '21 15:11 pohly

/stage beta /milestone v1.24

ehashman avatar Jan 14 '22 22:01 ehashman

Hello @serathius

v1.24 Enhancements team here.

Just checking in as we approach enhancements freeze on 18:00pm PT on Thursday Feb 3rd, 2022. This enhancement is targeting beta for v1.24,

Here’s where this enhancement currently stands:

  • [X] Updated KEP file using the latest template has been merged into the k/enhancements repo.
  • [X] KEP status is marked as implementable for this release
  • [X] KEP has a test plan section filled out.
  • [X] KEP has up to date graduation criteria.
  • [X] KEP has a production readiness review that has been completed and merged into k/enhancements.

The status of this enhancement is marked as tracked. Please keep the issue description up-to-date for release v1.24. Thanks!

hosseinsalahi avatar Jan 20 '22 10:01 hosseinsalahi

@pohly with deprecation done in v1.23 most work for Beta is done. Based on KEP I have found two goals for Beta:

  • Go-runner project is well maintained and documented
  • Documentation on migrating off klog flags is publicly available

Added them to top issue so we can track, however I think they are mostly done. Do you think that there is anything left to do?

serathius avatar Jan 20 '22 10:01 serathius

Go-runner project is well maintained and documented

It's now here: https://github.com/kubernetes/kubernetes/tree/master/staging/src/k8s.io/component-base/logs/kube-log-runner

Documentation on migrating off klog flags is publicly available

For that we have: https://kubernetes.io/docs/concepts/cluster-administration/system-logs/#klog

There's also a talk proposal pending for KubeCon EU.

Overall I think we are done.

pohly avatar Jan 20 '22 12:01 pohly

@pohly @serathius can you please open a PR to bump milestone to 1.24? I think @encodeflush was looking at last release's updates.

https://github.com/kubernetes/enhancements/blob/c0e42f4342d083576687c896d02fecff5418a699/keps/sig-instrumentation/2845-deprecate-klog-specific-flags-in-k8s-components/kep.yaml#L19-L20

ehashman avatar Jan 20 '22 18:01 ehashman

https://github.com/kubernetes/enhancements/pull/3170 bumps the milestone.

pohly avatar Jan 21 '22 07:01 pohly

Hi @pohly and @serathius 👋 1.24 Docs shadow here.

This enhancement is marked as 'Needs Docs' for the 1.24 release.

Please follow the steps detailed in the documentation to open a PR against the dev-1.24 branch in the k/website repo. This PR can be just a placeholder at this time and must be created before Thu March 31, 11:59 PM PDT.

Also, if needed take a look at Documenting for a release to familiarize yourself with the docs requirement for the release.

Thanks!

chrisnegus avatar Feb 11 '22 21:02 chrisnegus

The beta docs requirement was:

Documentation on migrating off klog flags is publicly available

@pohly has done this and will add a link to the issue here.

ehashman avatar Mar 17 '22 16:03 ehashman

Current documentation: https://github.com/kubernetes/website/blob/main/content/en/docs/concepts/cluster-administration/system-logs.md#klog

I don't think we need anything beyond that for 1.24.

pohly avatar Mar 17 '22 16:03 pohly

Thanks @pohly ! I'll note that on our project board. Thanks!

chrisnegus avatar Mar 19 '22 14:03 chrisnegus

Hi @serathius and @pohly :wave: 1.24 Release Comms team here.

We have an opt-in process for the feature blog delivery. If you would like to publish a feature blog for this issue in this cycle, then please opt in on this tracking sheet.

The deadline for submissions and the feature blog freeze is scheduled for 01:00 UTC Wednesday 23rd March 2022 / 18:00 PDT Tuesday 22nd March 2022. Other important dates for delivery and review are listed here: https://github.com/kubernetes/sig-release/tree/master/releases/release-1.24#timeline.

For reference, here is the blog for 1.23.

Please feel free to reach out any time to me or on the #release-comms channel with questions or comments.

Thanks!

valaparthvi avatar Mar 21 '22 04:03 valaparthvi

Hello @serathius @pohly

I'm just checking in once more as we approach the 1.24 Code Freeze on 18:00 PDT, Tuesday, March 29th 2022

Please ensure the following items are completed:

  • [ ] All PRs to the Kubernetes repo that are related to your enhancement are merged by the code freeze deadline.
  • [X] Have a documentation placeholder PR open by 18:00 PDT, Thursday, March 31, 2022.

For note, the status of this enhancement is currently marked as at risk.

Could you please confirm if following PR is part of the implementation for this enhancement?

  • https://github.com/kubernetes/enhancements/issues/1602

Kindly please let me know if I'm missing any related PRs other than the ones I linked above. Thank you so much!

hosseinsalahi avatar Mar 21 '22 17:03 hosseinsalahi

Could you please confirm if following PR is part of the implementation for this enhancement?

@encodeflush all the work for Beta is done, I don't think this is a PR.

serathius avatar Mar 22 '22 09:03 serathius

Hello @serathius @pohly

I'm just checking in once more as we approach the 1.24 Code Freeze on 18:00 PDT, Tuesday, March 29th 2022

Please ensure the following items are completed:

  • [X] All PRs to the Kubernetes repo that are related to your enhancement are merged by the code freeze deadline.
  • [X] Have a documentation placeholder PR open by 18:00 PDT, Thursday, March 31, 2022.

For note, the status of this enhancement is currently marked as tracked.

~Could you please confirm if following PR is part of the implementation for this enhancement?~ ~- https://github.com/kubernetes/enhancements/issues/1602~

Thank you!

hosseinsalahi avatar Mar 23 '22 12:03 hosseinsalahi

The Kubernetes project currently lacks enough contributors to adequately respond to all issues and PRs.

This bot triages issues and PRs according to the following rules:

  • After 90d of inactivity, lifecycle/stale is applied
  • After 30d of inactivity since lifecycle/stale was applied, lifecycle/rotten is applied
  • After 30d of inactivity since lifecycle/rotten was applied, the issue is closed

You can:

  • Mark this issue or PR as fresh with /remove-lifecycle stale
  • Mark this issue or PR as rotten with /lifecycle rotten
  • Close this issue or PR with /close
  • Offer to help out with Issue Triage

Please send feedback to sig-contributor-experience at kubernetes/community.

/lifecycle stale

k8s-triage-robot avatar Aug 08 '22 13:08 k8s-triage-robot