skywalking/oap-server/server-starter/src/main/resources/otel-rules/windows.yaml

73 lines
3.0 KiB
YAML

# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.0
# (the "License"); you may not use this file except in compliance with
# the License. You may obtain a copy of the License at
#
# http://www.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
# This will parse a textual representation of a duration. The formats
# accepted are based on the ISO-8601 duration format {@code PnDTnHnMn.nS}
# with days considered to be exactly 24 hours.
# <p>
# Examples:
# <pre>
# "PT20.345S" -- parses as "20.345 seconds"
# "PT15M" -- parses as "15 minutes" (where a minute is 60 seconds)
# "PT10H" -- parses as "10 hours" (where an hour is 3600 seconds)
# "P2D" -- parses as "2 days" (where a day is 24 hours or 86400 seconds)
# "P2DT3H4M" -- parses as "2 days, 3 hours and 4 minutes"
# "P-6H3M" -- parses as "-6 hours and +3 minutes"
# "-P6H3M" -- parses as "-6 hours and -3 minutes"
# "-P-6H+3M" -- parses as "+6 hours and -3 minutes"
# </pre>
filter: "{ tags -> tags.job_name == 'windows-monitoring' }" # The OpenTelemetry job name
expSuffix: service(['node_identifier_host_name'] , Layer.OS_WINDOWS)
metricPrefix: meter_win
metricsRules:
#cpu windows don't expose cpu load metrics
- name: cpu_total_percentage
exp: (windows_cpu_time_total * 100).tagNotEqual('mode' , 'idle').sum(['node_identifier_host_name']).rate('PT1M')
- name: cpu_average_used
exp: (windows_cpu_time_total * 100).sum(['node_identifier_host_name' , 'mode']).rate('PT1M')
#memory
- name: memory_total
exp: windows_cs_physical_memory_bytes
- name: memory_available
exp: windows_os_physical_memory_free_bytes
- name: memory_used
exp: windows_cs_physical_memory_bytes - windows_os_physical_memory_free_bytes
- name: memory_swap_free
exp: windows_os_virtual_memory_free_bytes
- name: memory_swap_total
exp: windows_os_virtual_memory_bytes
- name: memory_swap_percentage
exp: 100 - ((windows_os_virtual_memory_free_bytes * 100) / windows_os_virtual_memory_bytes)
#disk
- name: disk_read
exp: windows_logical_disk_read_bytes_total.sum(['node_identifier_host_name']).rate('PT1M')
- name: disk_written
exp: windows_logical_disk_write_bytes_total.sum(['node_identifier_host_name']).rate('PT1M')
#network
- name: network_receive
exp: windows_net_bytes_received_total.sum(['node_identifier_host_name']).irate()
- name: network_transmit
exp: windows_net_bytes_sent_total.sum(['node_identifier_host_name']).irate()