Custom Columns
k get deployments.apps -n=admin2406 -o=json
k get deployments.apps -n=admin2406 -o=custom-columns=DEPLOYMENT:.metadata.name,CONTAINER_IMAGE:.spec.template.spec.containers[0].image,READY_REPLICAS:.status.readyReplicas,NAMESPACE:.metadata.namespace > /opt/admin2406_data
K8s Object ์ ํน์ ์ ๋ณด๋ฅผ ์ทจํฉํด์ ํ์ผ๋ก ์ ์ฅํ๊ณ ์ถ์ ๋ custom-columns ์ต์
์ ํ์ฉํ ์ ์๋ค. json ์ต์
์ ์ฌ์ฉํ์ ๋ ์ถ๋ ฅ๋๋ ๊ณ์ธต์ ๋ฐ๋ผ ํน์ ์ ๋ณด์ ์ ๊ทผํ ์ ์๋ค.
kubectl logs
kubectl logs -l app=log-lab --prefix
--prefix ์ต์
์ผ๋ก ๋ก๊ทธ ์์ ์ด๋ ํ๋์ ์ด๋ ์ปจํ
์ด๋์์ ์์ฑ๋ ๋ก๊ทธ์ธ์ง ํ์ธ ๊ฐ๋ฅ
kubectl logs -l app=log-lab --prefix --since=10m
--since ์ต์
์ผ๋ก ์ต๊ทผ ์๊ฐ ๋ด์ ์์ฑ๋ ๋ก๊ทธ๋ง ํ์ธ ๊ฐ๋ฅ
kubectl logs -l app=log-lab --prefix --since=10m --tail=100
--tail ์ต์
์ผ๋ก ์ต๊ทผ ๋ก๊ทธ ๊ฐฏ์ ์ ํ ๊ฐ๋ฅ
Some useful grep
kubectl logs -l app=log-lab --prefix --since=10m --tail=100 | grep -iE 'error|warn'
grep -E ๋ก ์ฌ๋ฌ ํค์๋๋ฅผ ๋งค์นญํด์ ํํฐ๋ง ๊ฐ๋ฅ, -i ์ต์
๊น์ง ์ถ๊ฐํ๋ฉด ๋์๋ฌธ์ ๊ตฌ๋ถํ์ง ์๊ณ ํ์ธ
kubectl logs -l app=log-lab --prefix --since=10m --tail=100 | grep -F "connection refused"
grep -F ๋ก ๋ฌธ์์ด ๊ฒ์
kubectl logs -l app=log-lab --prefix --since=10m --tail=100 | grep -w "ERROR"
grep -w ๋ก ๋จ์ด ๋จ์๋ก ๋งค์นญ
kubectl logs -l app=log-lab --prefix --since=10m --tail=100 | grep -C2 'error'
grep -C2 (Context ์ C) ๋ก ๋งค์นญ๋ ๋ก๊ทธ ์ ๋ค๋ก 2์ค์ ์ถ๊ฐ๋ก ๋ณด์ฌ์ค ์ ์๋ค
kubectl logs -l app=log-lab --prefix --since=10m --tail=100 | grep -A2 'error'
grep -A2 (After ์ A) ๋ก ๋งค์นญ๋ ๋ก๊ทธ ๋ค 2์ค์ ์ถ๊ฐ๋ก ๋ณด์ฌ์ค ์ ์๋ค
kubectl logs -l app=log-lab --prefix --since=10m --tail=100 | grep -B2 'error'
grep -B2 (Before ์ B) ๋ก ๋งค์นญ๋ ๋ก๊ทธ ์ 2์ค์ ์ถ๊ฐ๋ก ๋ณด์ฌ์ค ์ ์๋ค
kubectl logs -l app=log-lab --prefix -f | grep -E 'ERROR|WARN'
-f ๋ก ์ค์๊ฐ ๋ก๊ทธ ํ์ธ, grep ์กฐํฉ์ผ๋ก ์ํ๋ ๋ก๊ทธ๋ง ์ถ์ถ ๊ฐ๋ฅ