[英]How to let fluentd to collect logs from a container outside of k8s cluster?
[英]How to disable logs from k8s_cluster on Stackdriver Logging?
我們有一個Google Coud Platform項目,在該項目中我們使用群集來部署應用程序,我們在本月的賬單中注意到Stackdriver Logging增加太多,因此我們開始創建排除項。
我們沒有任何問題地將日志從resource.type="container"
排除, 但是我們無法從 resource.type="k8s_cluster"
過濾以創建所需的排除項:
resource.type="k8s_cluster"
protoPayload.serviceName="k8s.io"
protoPayload.resourceName="app.k8s.io/v1beta1/namespaces/default/applications/prometheus-1"
奇怪的是,除非我們過濾,否則Stackdriver Monitoring不會從那里檢測到任何數據(提取的0B) ,也不會從我們的gcp-project( https://console.cloud.google.com/logs/usage?project=xxxx )中檢測到任何數據使用日志查看器,那么我們可以看到日志。
Grafana能夠使用Stackdriver Datasource檢測數據,您可以在此處查看
resource.type="k8s_cluster"
的篩選器包含始終啟用的系統事件的審核日志,因此,與只有容器stdout和stderr日志記錄的resource.type="container"
不同,它們不會從Stackdriver Logging中排除。
此外,您可以通過在Stackdriver過濾器中添加'@type'條件來確定哪些日志屬於Audit Logs流:
resource.type="k8s_cluster"
protoPayload.serviceName="k8s.io"
protoPayload.resourceName="app.k8s.io/v1beta1/namespaces/default/applications/prometheus-1"
protoPayload."@type"="type.googleapis.com/google.cloud.audit.AuditLog"
最后,Grafana能夠顯示這些基於日志的指標,因為它們是通過數據源而不是通過Stackdriver導出到其中的。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.