New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Add command-line control for logrus log-level #556
Comments
Following up from the PR. I thought I'd capture some contour log information and share it to see what/where we'd like to do. I'll try to share enough information to make the results reproducible. tl;dr
That's about 3GB a day per-replica; I'm currently running 5 replica's (~15GB a day). SummaryWe can break (contour) logging behavior into 4 categories
I started with idle and live but skipped request and watch. if we find value in isolating those variables, I can extend my tooling. The results from idle and live were enough to suggest a log-level configuration. Manifest|Setup---
apiVersion: v1
kind: Service
metadata:
name: $META_NAME
labels:
app: $META_NAME
role: service
spec:
ports:
- name: http
port: 80
protocol: TCP
targetPort: 8080
selector:
app: $META_NAME
role: service
---
apiVersion: extensions/v1beta1
kind: Deployment
metadata:
name: $META_NAME
labels:
app: $META_NAME
role: service
spec:
replicas: 1
selector:
matchLabels:
app: $META_NAME
role: service
template:
metadata:
labels:
app: $META_NAME
role: service
spec:
terminationGracePeriodSeconds: 60
containers:
- name: echo
image: k8s.gcr.io/echoserver:1.10
ports:
- containerPort: 8080
resources:
limits:
cpu: 10m
memory: 20Mi
requests:
cpu: 10m
memory: 20Mi
---
apiVersion: extensions/v1beta1
kind: Ingress
metadata:
name: $META_NAME
labels:
app: $META_NAME
role: ingress
annotations:
kubernetes.io/ingress.class: contour
spec:
tls:
- hosts:
- $SPEC_HOST
secretName: xip-io
rules:
- host: $SPEC_HOST
http:
paths:
- path: /
backend:
serviceName: $META_NAME
servicePort: 80
---
Idle Log BehaviorIdle log behavior is simply a capture of the logging behavior observed at rest (e.g. the ingress controller is not serving traffic and there are no active changes to the items under watch). Here, we allow the data collection to range across n triples (built from the above manifest).
Example Logs where N=0
Live Log BehaviorLive log behavior is a capture of the observed log behavior on an active kubernetes cluster. This will be the least reproducible, given that it is specific to my environment, but I thought sharing would be useful. I suspect the cluster being observed is somewhere between n=64 and n=128 (based on ingress and service counts). Cluster:
Log Behavior
|
@mattalberts i'm going to close this issue, its been open for 10 months without an update. In the mean time I've made some improvements to log verbosity. Hopefully this is better that what it was back in July last year and we don't need to add additional controls to logrus. |
No worries! Thanks for the update. I'll check it out as part of migrating to v0.10.0. |
Signed-off-by: Steve Kriss <krisss@vmware.com>
@davecheney
If you're interested, I've added a command-line option to configure the logrus log-level. I added the option to serve command (rather than globally to the app), happy to move it if you prefer a wider scope.
Example
The text was updated successfully, but these errors were encountered: