diff --git a/Makefile b/Makefile index 0abb5c707b..61045e528e 100644 --- a/Makefile +++ b/Makefile @@ -421,13 +421,19 @@ copyright_check_auto_fix: define check_docs # check spell on docs @echo 'version of cspell: $(shell cspell --version)' - cspell lint --show-suggestions -c scripts/cspell.json --no-progress $(1)/**/*.md | tee dist/cspell.lint + @echo 'check markdown files under $(1)...' + + cspell lint --show-suggestions \ + -c scripts/cspell.json \ + --no-progress $(1)/**/*.md | tee dist/cspell.lint # check markdown style # markdownlint install: https://github.com/igorshubovych/markdownlint-cli @echo 'version of markdownlint: $(shell markdownlint --version)' @truncate -s 0 dist/md-lint.json - markdownlint -c scripts/markdownlint.yml -j -o dist/md-lint.json $(1) + markdownlint -c scripts/markdownlint.yml \ + -j \ + -o dist/md-lint.json $(1) @if [ -s dist/md-lint.json ]; then \ printf "$(RED) [FAIL] dist/md-lint.json not empty \n$(NC)"; \ @@ -444,14 +450,16 @@ endef exportdir=dist/export # only check ZH docs, EN docs too many errors -docs_dir=$(exportdir)/guance-doc/docs/ -docs_template_dir=internal/export/doc/ +# template generated real markdown files +docs_dir=$(exportdir)/guance-doc/docs +# all markdown template files +docs_template_dir=internal/export/doc md_lint: @GO111MODULE=off CGO_ENABLED=0 CGO_CFLAGS=$(CGO_FLAGS) \ go run cmd/make/make.go \ --mdcheck $(docs_template_dir) \ - --mdcheck-autofix=$(AUTO_FIX) # check doc templates + --mdcheck-autofix=$(AUTO_FIX) # check markdown templates first @rm -rf $(exportdir) && mkdir -p $(exportdir) @bash export.sh -D $(exportdir) -E -V 0.0.0 @GO111MODULE=off CGO_ENABLED=0 CGO_CFLAGS=$(CGO_FLAGS) \ diff --git a/internal/export/doc/en/apis.md b/internal/export/doc/en/apis.md index 73a158d60b..087b02655c 100644 --- a/internal/export/doc/en/apis.md +++ b/internal/export/doc/en/apis.md @@ -31,7 +31,7 @@ This API is used to upload(`POST`) various data (`category`) to DataKit. The URL - Type: bool - Required: N - Default value: false -- Description: Test mode, just POST Point to Datakit, not actually uploaded to the observation cloud +- Description: Test mode, just POST Point to Datakit, not actually uploaded to the Guance Cloud **`echo`** [:octicons-tag-24: Version-1.30.0](changelog.md#cl-1.30.0) diff --git a/internal/export/doc/en/changelog.md b/internal/export/doc/en/changelog.md index 52f9266a26..19d9d1b2aa 100644 --- a/internal/export/doc/en/changelog.md +++ b/internal/export/doc/en/changelog.md @@ -58,7 +58,7 @@ This release is an iterative update with the following main changes: Then the Nginx logs would **not** be processed by *nginx.p* but by *default.p*. This setting was not reasonable. The adjusted priority is as follows (priority decreasing): - 1. The Pipeline specified for `source` on the observation cloud page + 1. The Pipeline specified for `source` on the Guance Cloud page 1. The Pipeline specified for `source` in the collector 1. The `source` value can find the corresponding Pipeline (for example, if the `source` is the log of `my-app`, a *my-app.p* can be found in the Pipeline's storage directory) 1. Finally, use *default.p* @@ -320,7 +320,7 @@ This release is an iterative update with the following main changes: In this version, the data protocol has been extended. After upgrading from an older version of Datakit, if the center base is privately deployed, the following measures can be taken to maintain data compatibility: -- Upgrade the center base to [1.87.167](../deployment/changelog.md#1871672024-06-05) or +- Upgrade the center base to 1.87.167 or - Modify the [upload protocol configuration `content_encoding`](datakit-conf.md#dataway-settings) in *datakit.conf* to `v2` #### For InfluxDB {#cl-1.30.0-brk-influxdb} @@ -668,7 +668,7 @@ This release is an iterative release with the following updates: ### New addition {#cl-1.20.0-new} - [Redis](../integrations/redis.md) collector added `hotkey` info(#2019) -- Command `datakit monitor` add playing support for metrics from [Bug Report](why-no-data.m#bug-report)(#2001) +- Command `datakit monitor` add playing support for metrics from [Bug Report](why-no-data.md#bug-report)(#2001) - [Oracle](../integrations/oracle.md) collector added custom queries(#1929) - [Container](../integrations/container.md) logging files support wildcard match(#2004) - Kubernetes Pod add `network` and `storage` info(#2022) @@ -721,7 +721,7 @@ This release is an iterative release with the following updates: ### New addition {#cl-1.19.0-new} -- Add [OceanBase](../integrations/oceanbase.Md) for MySQL(#1952) +- Add [OceanBase](../integrations/oceanbase.md) for MySQL(#1952) - Add [record/play](datakit-tools-how-to.md#record-and-replay) feature(#1738) ### Fix {#cl-1.19.0-fix} @@ -766,7 +766,7 @@ This release is an iterative release with the following updates: - Fixed compatibility of large Tag values in Tracing data, now adjusted to 32MB(#1932) - Fix RUM session replay dirty data issue(#1958) - Fixed indicator information export issue(#1953) -- Fix the [v2 version protocol](Datakit-conf.m#datawawe-Settings) build error +- Fix the [v2 version protocol](datakit-conf.md#dataway-settings) build error ### Function optimization {#cl-1.18.0-opt} @@ -824,7 +824,7 @@ This release is a Hotfix release, which fixes the following issues: ### New features {#cl-1.17.1-new} - eBPF can also [build APM data](../integrations/ebpftrace.md) to trace process/thread relationship under Linux(#1835) -- Pipeline add new function [`pt_name`](../pipeline/pipeline/pipeline-built-in-function.md#fn-pt-name)(#1937) +- Pipeline add new function [`pt_name`](../pipeline/use-pipeline/pipeline-built-in-function.md#fn-pt-name)(#1937) ### Features Optimizations {#cl-1.17.1-opt} @@ -940,7 +940,7 @@ This release is an iterative release, mainly including the following updates: - Optimize Datakit image size (#1869) - Docs: - Add [documentation](../integrations/tracing-propagator.md) for different Trace delivery instructions (#1824) - - Add [Datakit Metric Performance Test Report](../integrations/datakit-metric-performance.md) (#1867) + - Add Datakit Metric Performance Test Report (#1867) - Add [documentation of external collector](../integrations/external.md) (#1851) - Pipeline - Added functions `parse_int()` and `format_int()` (#1824) @@ -990,7 +990,7 @@ This release is an iterative release, mainly including the following updates: - Remove [open_files_list](../integrations/host_processes.md#object) field in Process collector (#1838) - Added the handling case of index loss in the collector document of [host object](../integrations/hostobject.md#faq) (#1838) - Optimize the Datakit view and improve the Datakit Prometheus indicator documentation -- Optimize the mount method of [Pod/container log collection](../integration/container-log.md#logging-with-inside-config) (#1844) +- Optimize the mount method of [Pod/container log collection](../integrations/container-log.md#logging-with-inside-config) (#1844) - Add Process and System collector integration tests (#1841/#1842) - Optimize etcd integration tests (#1847) - Upgrade Golang 1.19.12 (#1516) diff --git a/internal/export/doc/en/common-tags.md b/internal/export/doc/en/common-tags.md index d372b30535..2372dbb34c 100644 --- a/internal/export/doc/en/common-tags.md +++ b/internal/export/doc/en/common-tags.md @@ -9,50 +9,50 @@ The following will be listed from two dimensions: global Tag and specific data t These tags are independent of the specific data type, and can be appended to any data type. -| Tag | Description | -| --- | --- | +| Tag | Description | +| --- | --- | | host | Hostname, DaemonSet installation and host installation can all carry this tag, and in certain cases, users can rename the value of this tag. | -| project | Project name, which is usually set by the user. | -| cluster | Cluster name, usually set by the user in DaemonSet installation. | -| election_namespace | The namespace of the election is not appended by default. See [the document](datakit-daemonset-deploy.md#env-elect). | -| version | Version number, all tag fields involving version information, should be represented by this tag. | +| project | Project name, which is usually set by the user. | +| cluster | Cluster name, usually set by the user in DaemonSet installation. | +| election_namespace | The namespace of the election is not appended by default. See [the document](datakit-daemonset-deploy.md#env-elect). | +| version | Version number, all tag fields involving version information, should be represented by this tag. | ### Kubernetes/Common Tag of Container {#k8s-tags} These tags are usually added to the collected data, but when it comes to time series collection, some changeable tags (such as `pod_name`) will be ignored by default to save the timeline. -| Tag | Description | -| --- | --- | -| `pod_name` | Pod name | -| `deployment` | Deployment name in k8s | -| `service` | Service name in k8s | -| `namespace` | Namespace name in k8s | -| `job` | Job name in k8s | -| `image` | Full name of mirroring in k8s | -| `image_name` | Abbreviation of mirror name in k8s | -| `container_name` | K8s/Container name in the container | -| `cronjob` | CronJob name in k8s | -| `daemonset` | DaemonSet name in k8s | -| `replica_set` | ReplicaSet name in k8s| -| `node_name` | Node name in k8s | -| `node_ip` | Node IP in k8s | +| Tag | Description | +| --- | --- | +| `pod_name` | Pod name | +| `deployment` | Deployment name in k8s | +| `service` | Service name in k8s | +| `namespace` | Namespace name in k8s | +| `job` | Job name in k8s | +| `image` | Full name of mirroring in k8s | +| `image_name` | Abbreviation of mirror name in k8s | +| `container_name` | K8s/Container name in the container | +| `cronjob` | CronJob name in k8s | +| `daemonset` | DaemonSet name in k8s | +| `replica_set` | ReplicaSet name in k8s | +| `node_name` | Node name in k8s | +| `node_ip` | Node IP in k8s | ## Tag Categorization of Specific Data Types {#tag-classes} ### Log {#L} -| Tag | Description | -| --- | --- | -| source | The log source exists as a metric set name on the line protocol, not as a tag. The center stores it as a tag as the source field of the log. | -| service | Referring to the service name of the log. If not filled in, its value is equivalent to the source field | -| status | Referring to log level. If it is not filled in, the collector will set its value to `unknown` by default, and the common status list is [here](logging.md#status). | +| Tag | Description | +| --- | --- | +| source | The log source exists as a metric set name on the line protocol, not as a tag. The center stores it as a tag as the source field of the log. | +| service | Referring to the service name of the log. If not filled in, its value is equivalent to the source field | +| status | Referring to log level. If it is not filled in, the collector will set its value to `unknown` by default, and the common status list is [here](../integrations/logging.md#status). | ### Object {#O} -| Tag | Description | -| --- | --- | +| Tag | Description | +| --- | --- | | class | Referring to object classification. It exists as a metric set name on the row protocol, instead of a tag. But the center stores it as a tag as the class field of the object | -| name | Referring to object name. The center combines hash (class + name) to uniquely identify objects in a workspace. | +| name | Referring to object name. The center combines hash (class + name) to uniquely identify objects in a workspace. | ### Metrics {#M} @@ -60,7 +60,7 @@ There is no fixed tag except the global tags because of the various data sources ### APM {#T} -The tag of Tracing class data is unified [here](ddtrace.md#measurements). +The tag of Tracing class data is unified [here](../integrations/ddtrace.md#measurements). ### RUM {#R} @@ -79,12 +79,12 @@ See the [Scheck doc](../scheck/scheck-how-to.md). ### Profile {#P} -See the [collector doc](profile.md#measurements). +See the [collector doc](../integrations/profile.md#measurements). ### Network {#N} -See the [collector doc](ebpf.md#measurements). +See the [collector doc](../integrations/ebpf.md#measurements). ### Event {#E} -See the [design doc](../events/generating.md). +See the [design doc](../events/index.md). diff --git a/internal/export/doc/en/datakit-arch.md b/internal/export/doc/en/datakit-arch.md index 2321a8ff37..26428e89ab 100644 --- a/internal/export/doc/en/datakit-arch.md +++ b/internal/export/doc/en/datakit-arch.md @@ -16,7 +16,7 @@ The DataKit network model is mainly divided into three layers, which can be simp 1. DataKit mainly collects various metrics through regular collection, and then sends the data to DataWay through HTTP (s) regularly and quantitatively. Each DataKit is configured with a corresponding token to identify different users. -> If the user's intranet environment does not open the external request, [Nginx can be used as a layer Proxy](proxy.md#nginx-proxy), and [Proxy collector](proxy.md) built in DataKit can also be used to realize traffic Proxy. +> If the user's intranet environment does not open the external request, [Nginx can be used as a layer Proxy](../integrations/proxy.md#nginx-proxy), and [Proxy collector](../integrations/proxy.md) built in DataKit can also be used to realize traffic Proxy. 1. After DataWay receives the data, it forwards to Guance Cloud, and the data sent to Guance Cloud has API signature. 1. After Guance Cloud receives the legal data, it writes it into different storage according to different data types. @@ -43,17 +43,17 @@ From top to bottom, the interior of DataKit is mainly divided into three layers: - Configuration loading module: Except for DataKit's own main configuration (`conf.d/datakit.conf`), the configuration of each collector is configured separately. If put together, this configuration file may be very large and not easy to edit. - Service management module: Mainly responsible for the management of the whole DataKit service. - Tool chain module: DataKit, as a client program, not only collects data, but also provides many other peripheral functions, which are implemented in the tool chain module, such as viewing documents, restarting services, updating and so on. - - Pipeline module: In log processing, through [Pipeline script](../pipeline/pipeline/index.md), the log is cut, and the unstructured log data is converted into structured data. In other non-log data, corresponding data processing can also be performed. + - Pipeline module: In log processing, through [Pipeline script](../pipeline/index.md), the log is cut, and the unstructured log data is converted into structured data. In other non-log data, corresponding data processing can also be performed. - Election module: When a large number of DataKits are deployed, users can make the configuration of all DataKits the same, and then distribute the configuration to each DataKit through [automated batch deployment](datakit-batch-deploy.md) The significance of the election module is that in a cluster, when collecting some data (such as Kubernetes cluster index), **should only have one** DataKit to collect (otherwise, the data will be repeated and pressure will be caused to the collected party). When all DataKit configurations in the cluster are identical, only one DataKit can be collected at any time through the election module. - Document module: DataKit documents are generated by its own code, which is convenient for automatic publication of documents. - Transport layer: responsible for almost all data input and output. - - HTTP service module: DataKit supports access to third-party data, such as [Telegraf](telegraf.md)/[Prometheus](prom.md), and more data sources can be accessed later. At present, these data are accessed through HTTP. + - HTTP service module: DataKit supports access to third-party data, such as [Telegraf](../integrations/telegraf.md)/[Prometheus](../integrations/prom.md), and more data sources can be accessed later. At present, these data are accessed through HTTP. - IO module: Each data collection plug-in will send data to IO module after each collection. IO module encapsulates a unified data construction, processing and sending interface, which is convenient to access the data collected by various collector plug-ins. In addition, the IO module sends data to DataWay over HTTP (s) at a certain rhythm (periodic, quantitative). - Collection layer: responsible for collecting various data. According to the type of collection, it is divided into two categories: - - Active collection type: This type of collector collects according to the configured fixed frequency, such as [CPU](cpu.md), [network card traffic](net.md), [cloud dial test](dialtesting.md), etc. - - Passive acquisition type: This kind of collector usually realizes acquisition by external data input, such as [RUM](rum.md)、[Tracing](ddtrace.md), etc. They generally run outside of DataKit, and can standardize the data through DataKit's open[Data Upload API](apis.md), and then upload it to Guance Cloud. + - Active collection type: This type of collector collects according to the configured fixed frequency, such as [CPU](../integrations/cpu.md), [network traffic](../integrations/net.md), [cloud dial test](../integrations/dialtesting.md), etc. + - Passive acquisition type: This kind of collector usually realizes acquisition by external data input, such as [RUM](../integrations/rum.md)、[Tracing](../integrations/ddtrace.md), etc. They generally run outside of DataKit, and can standardize the data through DataKit's open[Data Upload API](apis.md), and then upload it to Guance Cloud. Each different collector runs independently in an independent goroutine, and is protected by an outer layer. Even if a single collector collapses for some reasons (each collector can crash up to 6 times during the running period), it will not affect the overall operation of DataKit. diff --git a/internal/export/doc/en/datakit-conf.md b/internal/export/doc/en/datakit-conf.md index 2eb399bdbd..185bd8b0ff 100644 --- a/internal/export/doc/en/datakit-conf.md +++ b/internal/export/doc/en/datakit-conf.md @@ -290,7 +290,7 @@ To standardize the statistical measurement of Datakit usage, the following clari - If none of the following collectors are enabled, then the logical measurement count for Datakit is 1. - If the runtime of Datakit (with no more than a 30-minute interruption) exceeds 12 hours, it is counted for metering; otherwise, it is not counted. -- For the following enabled collectors, the measurement is based on the [current configured number of CPU cores](datakit-cond.md#resource-limit) of Datakit, with a minimum value of 1 and a maximum value equal to the number of physical CPU cores [^1], rounding up any fractional part according to the rounding rules: +- For the following enabled collectors, the measurement is based on the [current configured number of CPU cores](datakit-conf.md#resource-limit) of Datakit, with a minimum value of 1 and a maximum value equal to the number of physical CPU cores [^1], rounding up any fractional part according to the rounding rules: - [RUM Collector](../integrations/rum.md) - Collectors that receive log data via [TCP/UDP](../integrations/logging.md##socket) - Collectors that synchronize logs/metrics/RUM, etc., data via [kafkamq Collector](../integrations/kafkamq.md) @@ -359,7 +359,7 @@ Note: After Git synchronization is turned on, the collector configuration in the #### Applying Git-managed Pipeline Sample {#gitrepo-example} -We can add Pipeline to the collector configuration to cut the logs of related services. When Git synchronization is turned on, both **the Pipeline that comes with DataKit and the Pipeline synchronized by Git can be used**. In the configuration of [Nginx collector](nginx.md), a configuration example of Pipeline. +We can add Pipeline to the collector configuration to cut the logs of related services. When Git synchronization is turned on, both **the Pipeline that comes with DataKit and the Pipeline synchronized by Git can be used**. In the configuration of [Nginx collector](../integrations/nginx.md), a configuration example of Pipeline. ```toml [[inputs.nginx]] diff --git a/internal/export/doc/en/datakit-filter.md b/internal/export/doc/en/datakit-filter.md index 84cdac0412..309dfdac6b 100644 --- a/internal/export/doc/en/datakit-filter.md +++ b/internal/export/doc/en/datakit-filter.md @@ -109,7 +109,7 @@ The configuration here should follow the following rules: ### Basic Grammar Rules {#basic} -The basic syntax rules of filter are basically the same as Pipeline, see [here](../pipeline/pipeline/pipeline-platypus-grammar.md). +The basic syntax rules of filter are basically the same as Pipeline, see [here](../pipeline/use-pipeline/pipeline-platypus-grammar.md). ### Operator {#operator} @@ -165,7 +165,7 @@ You can view the filtering using the `datakit monitor -V` command: ### Network {#n} -The [eBPF collector](ebpf.md) needs to be turned on. Suppose we want to filter out network traffic with destination port `443`, the configuration file can read as follows: +The [eBPF collector](../integrations/ebpf.md) needs to be turned on. Suppose we want to filter out network traffic with destination port `443`, the configuration file can read as follows: ```toml [io] diff --git a/internal/export/doc/en/datakit-input-conf.md b/internal/export/doc/en/datakit-input-conf.md index b4993a275e..de9f0cb7d4 100644 --- a/internal/export/doc/en/datakit-input-conf.md +++ b/internal/export/doc/en/datakit-input-conf.md @@ -106,20 +106,20 @@ This is actually a Toml array structure, the structure is suitable for multiple Some collectors only allow a single instance to run, and even if multiple copies are configured, only a single instance will run. These single instance collectors are listed as follows: -| Collector Name | Description | -| --- | --- | -| [`cpu`](cpu.md) | Collect the CPU usage of the host | -| [`disk`](disk.md) | Collect disk occupancy | -| [`diskio`](diskio.md) | Collect the disk IO status of the host | -| [`ebpf`](ebpf.md) | Collect TCP and UDP connection information of host network, Bash execution log, etc. | -| [`mem`](mem.md) | Collect the memory usage of the host | -| [`swap`](swap.md) | Collect Swap memory usage | -| [`system`](system.md) | Collect the load of host operating system | -| [`net`](net.md) | Collect host network traffic | -| [`netstat`](netstat.md) | Collect network connections, including TCP/UDP connections, waiting for connections, waiting for processing requests, etc. | -| [`host_processes`](host_processes.md) | Collect the list of resident (surviving for more than 10min) processes on the host | -| [`hostobject`](hostobject.md) | Collect basic information of host computer (such as operating system information, hardware information, etc.) | -| [`container`](container.md) | Collect possible containers or Kubernetes data on the host. Assuming there are no containers on the host, the collector will exit directly. | +| Collector Name | Description | +| --- | --- | +| [`cpu`](../integrations/cpu.md) | Collect the CPU usage of the host | +| [`disk`](../integrations/disk.md) | Collect disk occupancy | +| [`diskio`](../integrations/diskio.md) | Collect the disk IO status of the host | +| [`ebpf`](../integrations/ebpf.md) | Collect TCP and UDP connection information of host network, Bash execution log, etc. | +| [`mem`](../integrations/mem.md) | Collect the memory usage of the host | +| [`swap`](../integrations/swap.md) | Collect Swap memory usage | +| [`system`](../integrations/system.md) | Collect the load of host operating system | +| [`net`](../integrations/net.md) | Collect host network traffic | +| [`netstat`](../integrations/netstat.md) | Collect network connections, including TCP/UDP connections, waiting for connections, waiting for processing requests, etc. | +| [`host_processes`](../integrations/host_processes.md) | Collect the list of resident (surviving for more than 10min) processes on the host | +| [`hostobject`](../integrations/hostobject.md) | Collect basic information of host computer (such as operating system information, hardware information, etc.) | +| [`container`](../integrations/container.md) | Collect possible containers or Kubernetes data on the host. Assuming there are no containers on the host, the collector will exit directly. | ### Close the Specific Collector {#disable-inputs} @@ -184,18 +184,18 @@ In addition, since Toml is used in the configuration of DataKit, it is recommend After DataKit is installed, a batch of collectors will be turned on by default without manual opening. These collectors are generally related to the host, and the list is as follows: -| Collector Name | Description | -| --- | --- | -| [`cpu`](cpu.md) | Collect the CPU usage of the host | -| [`disk`](disk.md) | Collect disk occupancy | -| [`diskio`](diskio.md) | Collect the disk IO status of the host | -| [`mem`](mem.md) | Collect the memory usage of the host | -| [`swap`](swap.md) | Collect Swap memory usage | -| [`system`](system.md) | Collect the load of host operating system | -| [`net`](net.md) | Collect host network traffic | -| [`host_processes`](host_processes.md) | Collect the list of resident (surviving for more than 10min) processes on the host | -| [`hostobject`](hostobject.md) | Collect basic information of host computer (such as operating system information, hardware information, etc.) | -| [`container`](container.md) | Collect possible containers or Kubernetes data on the host. Assuming there are no containers on the host, the collector will exit directly. | +| Collector Name | Description | +| --- | --- | +| [`cpu`](../integrations/cpu.md) | Collect the CPU usage of the host | +| [`disk`](../integrations/disk.md) | Collect disk occupancy | +| [`diskio`](../integrations/diskio.md) | Collect the disk IO status of the host | +| [`mem`](../integrations/mem.md) | Collect the memory usage of the host | +| [`swap`](../integrations/swap.md) | Collect Swap memory usage | +| [`system`](../integrations/system.md) | Collect the load of host operating system | +| [`net`](../integrations/net.md) | Collect host network traffic | +| [`host_processes`](../integrations/host_processes.md) | Collect the list of resident (surviving for more than 10min) processes on the host | +| [`hostobject`](../integrations/hostobject.md) | Collect basic information of host computer (such as operating system information, hardware information, etc.) | +| [`container`](../integrations/container.md) | Collect possible containers or Kubernetes data on the host. Assuming there are no containers on the host, the collector will exit directly. | ## Password Encoding {#password-encode} diff --git a/internal/export/doc/en/datakit-offline-install.md b/internal/export/doc/en/datakit-offline-install.md index c7e9dfaaf1..4ded0d42fd 100644 --- a/internal/export/doc/en/datakit-offline-install.md +++ b/internal/export/doc/en/datakit-offline-install.md @@ -16,7 +16,7 @@ At present, DataKit has a inner proxy collector; The same goal can also be achie ### Preconditions {#requrements} -- Install a DataKit on a machine with a public network exit [in the normal installation mode](datakit-install.md), and turn on the proxy collector on the DataKit, assuming that the [proxy](proxy.md) collector is located in Datakit IP 1.2. 3.4, with the following configuration: +- Install a DataKit on a machine with a public network exit [in the normal installation mode](datakit-install.md), and turn on the proxy collector on the DataKit, assuming that the [proxy](../integrations/proxy.md) collector is located in Datakit IP 1.2. 3.4, with the following configuration: ```toml [[inputs.proxy]] diff --git a/internal/export/doc/en/datakit-operator.md b/internal/export/doc/en/datakit-operator.md index 7de5248a06..791f62a3d8 100644 --- a/internal/export/doc/en/datakit-operator.md +++ b/internal/export/doc/en/datakit-operator.md @@ -326,7 +326,7 @@ datakit-lib-init #### Prerequisites {#datakit-operator-inject-logfwd-prerequisites} -[logfwd](logfwd.md#using) is a proprietary log collection application for Datakit. To use it, you need to first deploy Datakit in the same Kubernetes cluster and satisfy the following two conditions: +[logfwd](../integrations/logfwd.md#using) is a proprietary log collection application for Datakit. To use it, you need to first deploy Datakit in the same Kubernetes cluster and satisfy the following two conditions: 1. The Datakit `logfwdserver` collector is enabled, for example, listening on port `9533`. 2. The Datakit service needs to open port `9533` to allow other Pods to access `datakit-service.datakit.svc:9533`. @@ -362,17 +362,17 @@ datakit-lib-init ] ``` -Parameter explanation can refer to [logfwd configuration](logfwd.md#config): +Parameter explanation can refer to [logfwd configuration](../integrations/logfwd.md#config): - `datakit_addr` is the Datakit logfwdserver address. -- `loggings` is the main configuration and is an array that can refer to [Datakit logging collector](logging.md). +- `loggings` is the main configuration and is an array that can refer to [Datakit logging collector](../integrations/logging.md). - `logfiles` is a list of log files, which can specify absolute paths and support batch specification using glob rules. Absolute paths are recommended. - `ignore` filters file paths using glob rules. If it meets any filtering condition, the file will not be collected. - `source` is the data source. If it is empty, `'default'` will be used by default. - `service` adds a new tag. If it is empty, `$source` will be used by default. - `pipeline` is the Pipeline script path. If it is empty, `$source.p` will be used. If `$source.p` does not exist, the Pipeline will not be used. (This script file exists on the DataKit side.) - `character_encoding` selects an encoding. If the encoding is incorrect, the data cannot be viewed. It is recommended to leave it blank. Supported encodings include `utf-8`, `utf-16le`, `utf-16le`, `gbk`, `gb18030`, or "". - - `multiline_match` is for multiline matching, as described in [Datakit Log Multiline Configuration](logging.md#multiline). Note that since it is in the JSON format, it does not support the "unescaped writing method" of three single quotes. The regex `^\d{4}` needs to be written as `^\\d{4}` with an escape character. + - `multiline_match` is for multiline matching, as described in [Datakit Log Multiline Configuration](../integrations/logging.md#multiline). Note that since it is in the JSON format, it does not support the "unescaped writing method" of three single quotes. The regex `^\d{4}` needs to be written as `^\\d{4}` with an escape character. - `tags` adds additional tags in JSON map format, such as `{ "key1":"value1", "key2":"value2" }`. #### Example {#datakit-operator-inject-logfwd-example} @@ -422,7 +422,7 @@ $ kubectl get pod logging-deployment-5d48bf9995-vt6bb -o=jsonpath={.spec.contain log-container datakit-logfwd ``` -Finally, you can check whether the logs have been collected on the Observability Cloud Log Platform. +Finally, you can check whether the logs have been collected on the Guance Cloud Log Platform. ### FAQ {#datakit-operator-faq} diff --git a/internal/export/doc/en/datakit-tools-how-to.md b/internal/export/doc/en/datakit-tools-how-to.md index e6f69b17f1..b2372dd238 100644 --- a/internal/export/doc/en/datakit-tools-how-to.md +++ b/internal/export/doc/en/datakit-tools-how-to.md @@ -373,7 +373,7 @@ cp telegraf.conf.sample telegraf.conf telegraf --config telegraf.conf ``` -See [here](telegraf.md) for the use of Telegraf. +See [here](../integrations/telegraf.md) for the use of Telegraf. ### Security Checker Integration {#scheck} @@ -387,7 +387,7 @@ It will run automatically after successful installation, and Security Checker is ### DataKit eBPF Integration {#ebpf} -The DataKit eBPF collector currently only supports `linux/amd64 | linux/arm64` platform. See [DataKit eBPF collector](ebpf.md) for instructions on how to use the collector. +The DataKit eBPF collector currently only supports `linux/amd64 | linux/arm64` platform. See [DataKit eBPF collector](../integrations/ebpf.md) for instructions on how to use the collector. ```shell datakit install --ebpf @@ -494,7 +494,7 @@ The output said that, data in file *lineproto.data* has been matched by the 7th( ### Using Glob Rules to Retrieve File Paths {#glob-conf} [:octicons-tag-24: Version-1.8.0](changelog.md#cl-1.8.0) -In logging collection, [glob rules can be used to configure log paths](logging.md#glob-rules). +In logging collection, [glob rules can be used to configure log paths](../integrations/logging.md#glob-rules). By using the DataKit debugging glob rule, a configuration file must be provided where each line of the file is a glob statement. @@ -524,7 +524,7 @@ $ datakit debug --glob-conf glob-config ### Matching Text with Regular Expressions {#regex-conf} [:octicons-tag-24: Version-1.8.0](changelog.md#cl-1.8.0) -In log collection, regular expressions can be used to configure [multiline log collection](logging.md#multiline). +In log collection, regular expressions can be used to configure [multiline log collection](../integrations/logging.md#multiline). By using the DataKit debugging regular expression rule, a configuration file must be provided where the first line of the file is the regular expression statement and the remaining contents are the matched text. diff --git a/internal/export/doc/en/dca.md b/internal/export/doc/en/dca.md index 1200331fd1..c3b3429bc4 100644 --- a/internal/export/doc/en/dca.md +++ b/internal/export/doc/en/dca.md @@ -250,7 +250,7 @@ docker run -d --name dca -p 8000:80 -e DCA_LOG_ENABLE_STDOUT=true -e DCA_LOG_LEV ### Log in to DCA {#login} -After the DCA is enabled and installed, you can access it by entering the address `localhost:8000` in your browser. When you visit it for the first time, the page will redirect you to a login transition page. After clicking the "Go Now" button at the bottom of the page, you will be guided to the GuanceCloud platform. Then, follow the instructions on the page to configure the DCA address. Once the configuration is completed, you will be able to directly access the DCA platform through the observation cloud platform without logging in. +After the DCA is enabled and installed, you can access it by entering the address `localhost:8000` in your browser. When you visit it for the first time, the page will redirect you to a login transition page. After clicking the "Go Now" button at the bottom of the page, you will be guided to the GuanceCloud platform. Then, follow the instructions on the page to configure the DCA address. Once the configuration is completed, you will be able to directly access the DCA platform through the Guance Cloud platform without logging in.
![](https://static.guance.com/images/datakit/dca/dca-login-redirect.png){ width="800" } @@ -296,7 +296,7 @@ Note: DCA does not support configuration of collector at present, so it is neces ### View Log Pipeline {#view-pipeline} -After connecting to the DataKit remotely, click「Pipelines」to view the Pipeline file that comes with the DataKit by default. Refer to the document [text data processing](pipeline.md) for Pipeline. +After connecting to the DataKit remotely, click「Pipelines」to view the Pipeline file that comes with the DataKit by default. Refer to the document [text data processing](../pipeline/index.md) for Pipeline.
![](https://static.guance.com/images/datakit/dca/dca-pipeline-1.png){ width="800" } @@ -304,7 +304,7 @@ After connecting to the DataKit remotely, click「Pipelines」to view the Pipeli ### View the Blacklist {#view-filters} -After connecting to DataKit remotely, click "Blacklist" to view the blacklist configured in the observation cloud. As shown in the following figure, `source = default and (status in [unknown])` is the configured blacklist condition. +After connecting to DataKit remotely, click "Blacklist" to view the blacklist configured in the Guance Cloud. As shown in the following figure, `source = default and (status in [unknown])` is the configured blacklist condition. Note: The blacklist files created through Guance Cloud are stored in the path: `/usr/local/datakit/data/.pull`. diff --git a/internal/export/doc/en/election.md b/internal/export/doc/en/election.md index 11fe3a1958..a410f5bf5f 100644 --- a/internal/export/doc/en/election.md +++ b/internal/export/doc/en/election.md @@ -173,21 +173,23 @@ Take MySQL as an example. In the same cluster (such as k8s cluster), suppose the The list of collectors currently supporting elections is as follows: -- [Apache](apache.md) -- [ElasticSearch](elasticsearch.md) -- [GitLab](gitlab.md) -- [InfluxDB](influxdb.md) -- [Container](container.md) -- [MongoDB](mongodb.md) -- [MySQL](mysql.md) -- [NSQ](nsq.md) -- [Nginx](nginx.md) -- [PostgreSQL](postgresql.md) -- [Prom](prom.md) -- [RabbitMQ](rabbitmq.md) -- [Redis](redis.md) -- [Solr](solr.md) -- [TDengine](tdengine.md) +- [Apache](../integrations/apache.md) +- [ElasticSearch](../integrations/elasticsearch.md) +- [GitLab](../integrations/gitlab.md) +- [InfluxDB](../integrations/influxdb.md) +- [Container](../integrations/container.md) +- [MongoDB](../integrations/mongodb.md) +- [MySQL](../integrations/mysql.md) +- [NSQ](../integrations/nsq.md) +- [Nginx](../integrations/nginx.md) +- [PostgreSQL](../integrations/postgresql.md) +- [Prom](../integrations/prom.md) +- [RabbitMQ](../integrations/rabbitmq.md) +- [Redis](../integrations/redis.md) +- [Solr](../integrations/solr.md) +- [TDengine](../integrations/tdengine.md) + +> In fact, there are more collectors that support elections, and this information may not be up-to-date. Please refer to the specific documentation of the collector for the most accurate information. ## FAQ {#faq} diff --git a/internal/export/doc/en/git-config-how-to.md b/internal/export/doc/en/git-config-how-to.md index f25ada4043..22ff0716b5 100644 --- a/internal/export/doc/en/git-config-how-to.md +++ b/internal/export/doc/en/git-config-how-to.md @@ -133,7 +133,7 @@ The Git repository must be stored with the following directory structure for var Among them: - *conf.d* is dedicated to storing collector configurations, and its subdirectories can be planned arbitrarily (subdirectories are allowed), any collector configuration file just needs to end with `.conf` -- *pipeline* is used to store Pipeline scripts, and it is recommended to plan Pipeline scripts according to [data type](../pipeline/pipeline/pipeline-category.md#store-and-index) +- *pipeline* is used to store Pipeline scripts, and it is recommended to plan Pipeline scripts according to [data type](../pipeline/use-pipeline/pipeline-category.md#store-and-index) - *python.d* is used to store Python scripts Here is an example of DataKit's directory structure after Git synchronization is enabled: diff --git a/internal/export/doc/en/index.md b/internal/export/doc/en/index.md index d36042b779..b79102cb79 100644 --- a/internal/export/doc/en/index.md +++ b/internal/export/doc/en/index.md @@ -13,20 +13,20 @@ DataKit is an open source and integrated data collection Agent, which provides f - Support data collection of metrics, logs and Tracing in host, middleware, log, APM and other fields - Complete support for Kubernetes cloud native ecology -- [Pipeline](../pipeline/pipeline/index.md): Easy structured data extraction +- [Pipeline](../pipeline/index.md): Easy structured data extraction - Support access to other third-party data collection - - [Telegraf](telegraf.md) - - [Prometheus](prom.md) - - [Statsd](statsd.md) - - [Fluentd](logstreaming.md) - - [Filebeat](beats_output.md) - - [Function](../dataflux-func/write-data-via-datakit.md) + - [Telegraf](../integrations/telegraf.md) + - [Prometheus](../integrations/prom.md) + - [Statsd](../integrations/statsd.md) + - [Fluentd](../integrations/logstreaming.md) + - [Filebeat](../integrations/beats_output.md) + - [Function](https://func.guance.com/doc/practice-write-data-via-datakit/){:target="_blank"} - Tracing - - [OpenTelemetry](opentelemetry.md) - - [DDTrace](ddtrace.md) - - [Zipkin](zipkin.md) - - [Jaeger](jaeger.md) - - [SkyWalking](skywalking.md) + - [OpenTelemetry](../integrations/opentelemetry.md) + - [DDTrace](../integrations/ddtrace.md) + - [Zipkin](../integrations/zipkin.md) + - [Jaeger](../integrations/jaeger.md) + - [SkyWalking](../integrations/skywalking.md) ## Description {#spec} diff --git a/internal/export/doc/en/inputs/apache.md b/internal/export/doc/en/inputs/apache.md index 034e7da685..c5f361e9a0 100644 --- a/internal/export/doc/en/inputs/apache.md +++ b/internal/export/doc/en/inputs/apache.md @@ -1,6 +1,9 @@ --- title : 'Apache' summary : 'Apache collector can collect the number of requests, connections, etc. from the Apache service' +tags: + - 'MIDDLEWARE' + - 'WEB SERVER' __int_icon : 'icon/apache' dashboard : - desc : 'Apache' @@ -10,11 +13,6 @@ monitor : path : 'monitor/en/apache' --- - -# Apache - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/awslambda.md b/internal/export/doc/en/inputs/awslambda.md index 87c3f16930..302bc5f53b 100644 --- a/internal/export/doc/en/inputs/awslambda.md +++ b/internal/export/doc/en/inputs/awslambda.md @@ -1,6 +1,8 @@ --- -title : 'AWS Lambda Extention' -summary : 'Extend data collection through awslambda' +title : 'AWS Lambda Extension' +summary : 'Extend data collection through AWS Lambda' +tags: + - 'AWS' __int_icon : 'icon/awslambda' dashboard : - desc : 'None' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# AWSLambda - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/beats_output.md b/internal/export/doc/en/inputs/beats_output.md index ccbfff2026..22989eab72 100644 --- a/internal/export/doc/en/inputs/beats_output.md +++ b/internal/export/doc/en/inputs/beats_output.md @@ -1,6 +1,8 @@ --- title : 'Filebeat' summary : 'Receive log collected by Filebeat ' +tags: + - 'LOG' __int_icon : 'icon/beats' dashboard : - desc : 'N/A' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Filebeat - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/built-in_cdn_dict_config.md b/internal/export/doc/en/inputs/built-in_cdn_dict_config.md index 4d52ad1c54..009c6bdc3c 100644 --- a/internal/export/doc/en/inputs/built-in_cdn_dict_config.md +++ b/internal/export/doc/en/inputs/built-in_cdn_dict_config.md @@ -1,4 +1,7 @@ -# Built-in CDN Dict +--- +skip: 'not-searchable-on-index-page' +title: 'Built-in CDN List' +--- ```toml @@ -1336,4 +1339,4 @@ } ] ''' -``` \ No newline at end of file +``` diff --git a/internal/export/doc/en/inputs/cassandra.md b/internal/export/doc/en/inputs/cassandra.md index d77c70a77a..d4f85a7a53 100644 --- a/internal/export/doc/en/inputs/cassandra.md +++ b/internal/export/doc/en/inputs/cassandra.md @@ -1,20 +1,17 @@ --- -title : 'Cassandra' -summary : 'Collect Cassandra metrics' -__int_icon : 'icon/cassandra' -dashboard : - - desc : 'Cassandra' - path : 'dashboard/en/cassandra' -monitor : - - desc : 'Cassandra' - path : 'monitor/en/cassandra' +title : 'Cassandra' +summary : 'Collect Cassandra metrics' +tags : + - 'DATA STORES' +__int_icon : 'icon/cassandra' +dashboard : + - desc : 'Cassandra' + path : 'dashboard/en/cassandra' +monitor : + - desc : 'Cassandra' + path : 'monitor/en/cassandra' --- - -# Cassandra - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/cat.md b/internal/export/doc/en/inputs/cat.md index 952beca2b3..d87f799b81 100644 --- a/internal/export/doc/en/inputs/cat.md +++ b/internal/export/doc/en/inputs/cat.md @@ -1,7 +1,10 @@ --- -title : 'CAT' +title : 'Dianping CAT' summary : 'The performance, capacity, and business indicator monitoring system of Meituan Dianping' __int_icon : 'icon/cat' +tags: + - 'TRACING' + - 'APM' dashboard : - desc : 'Cat dashboard' path : 'dashboard/en/cat' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# CAT - ---- - [:octicons-tag-24: Version-1.9.0](../datakit/changelog.md#cl-1.9.0) · [:octicons-beaker-24: Experimental](../datakit/index.md#experimental) @@ -58,7 +56,7 @@ Data Classification: The data is all in the Datakit, and the web page of cat no longer has data, so the significance of starting is not significant. -Moreover, the cat server will also send transaction data to the dk, causing a large amount of garbage data on the observation cloud page. It is not recommended to start a cat_ Home (cat server) service. +Moreover, the cat server will also send transaction data to the dk, causing a large amount of garbage data on the Guance Cloud page. It is not recommended to start a cat_ Home (cat server) service. The corresponding configuration can be configured in client.xml, please refer to the following text. diff --git a/internal/export/doc/en/inputs/chrony.md b/internal/export/doc/en/inputs/chrony.md index ef33030c78..a58255b1cb 100644 --- a/internal/export/doc/en/inputs/chrony.md +++ b/internal/export/doc/en/inputs/chrony.md @@ -10,10 +10,6 @@ monitor : path : '-' --- - -# Chrony - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/clickhousev1.md b/internal/export/doc/en/inputs/clickhousev1.md index edee39e189..db2b236ff5 100644 --- a/internal/export/doc/en/inputs/clickhousev1.md +++ b/internal/export/doc/en/inputs/clickhousev1.md @@ -1,7 +1,9 @@ --- -title : 'ClickHouse' -summary : 'Collect metrics of ClickHouse' -__int_icon : 'icon/clickhouse' +title : 'ClickHouse' +summary : 'Collect metrics of ClickHouse' +__int_icon : 'icon/clickhouse' +tags: + - 'DATA STORES' dashboard : - desc : 'ClickHouse' path : 'dashboard/en/clickhouse' @@ -10,10 +12,6 @@ monitor : path : '-' --- - -# ClickHouse - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/cloudprober.md b/internal/export/doc/en/inputs/cloudprober.md index fb7424ee2b..fca78afb23 100644 --- a/internal/export/doc/en/inputs/cloudprober.md +++ b/internal/export/doc/en/inputs/cloudprober.md @@ -10,10 +10,6 @@ monitor : path : '-' --- - -# Cloudprober Access - ---- :fontawesome-brands-linux: :fontawesome-brands-windows: :fontawesome-brands-apple: diff --git a/internal/export/doc/en/inputs/cockroachdb.md b/internal/export/doc/en/inputs/cockroachdb.md index eabedbbaa5..da29dbf8f6 100644 --- a/internal/export/doc/en/inputs/cockroachdb.md +++ b/internal/export/doc/en/inputs/cockroachdb.md @@ -2,6 +2,8 @@ title : 'CockroachDB' summary : 'Collect CockroachDB metrics' __int_icon : 'icon/cockroachdb' +tags: + - 'DATA STORES' dashboard : - desc : 'CockroachDB' path : 'dashboard/en/cockroachdb' @@ -10,11 +12,6 @@ monitor : path : 'monitor/en/cockroachdb' --- - -# CockroachDB - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/consul.md b/internal/export/doc/en/inputs/consul.md index 262bacf94c..9cd35209da 100644 --- a/internal/export/doc/en/inputs/consul.md +++ b/internal/export/doc/en/inputs/consul.md @@ -1,6 +1,8 @@ --- title : 'Consul' summary : 'Collect metrics of Consul' +tags: + - 'MIDDLEWARE' __int_icon : 'icon/consul' dashboard : - desc : 'Consul' @@ -10,10 +12,6 @@ monitor : path : 'monitor/en/consul' --- - -# Consul - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/container-log.md b/internal/export/doc/en/inputs/container-log.md index 815f1cea06..0132888654 100644 --- a/internal/export/doc/en/inputs/container-log.md +++ b/internal/export/doc/en/inputs/container-log.md @@ -1,6 +1,11 @@ - -# Container Logs - +--- +title: 'Container Logs' +summary: 'Collect container and Kubernetes log' +tags: + - 'LOG' + - 'CONTAINER' + - 'KUBERNETES' +__int_icon: 'icon/kubernetes/' --- Datakit supports collecting Kubernetes and host container logs, which can be classified into the following two types based on the data source: @@ -465,6 +470,6 @@ Note that the mounting directory for the emptyDir volume must be higher than the ## Extended Reading {#more-reading} -- [Pipeline: Text Data Processing](../pipeline/pipeline/index.md) +- [Pipeline: Text Data Processing](../pipeline/index.md) - [Overview of DataKit Log Collection](datakit-logging.md) Therefore, the log files for this container will still be collected, but the stdout/stderr console output will not be collected because of `disable=true`. diff --git a/internal/export/doc/en/inputs/container.md b/internal/export/doc/en/inputs/container.md index b8e8aac742..0a690a85c9 100644 --- a/internal/export/doc/en/inputs/container.md +++ b/internal/export/doc/en/inputs/container.md @@ -1,6 +1,9 @@ --- title: 'Basic Collection Of Containers' summary: 'Collect metrics, objects, and log data for Container and Kubernetes, and report them to the guance cloud.' +tags: + - 'KUBERNETES' + - 'CONTAINER' __int_icon: 'icon/kubernetes/' dashboard: - desc: 'Kubernetes Dashboard' @@ -19,12 +22,6 @@ monitor: path: 'monitor/en/kubernetes' --- - - -# Container Data Collection - ---- - {{.AvailableArchs}} --- @@ -37,7 +34,7 @@ Collect indicators, objects and log data of container and Kubernetes and report - At present, container supported Docker/Containerd/CRI-O runtime - Docker v17.04 and above should be installed, Container v15.1 and above should be installed, CRI-O 1.20.1 and above should be installed. -- Collecting Kubernetes data requires the DataKit to [be deployed as a DaemonSet](datakit-daemonset-deploy.md). +- Collecting Kubernetes data requires the DataKit to [be deployed as a DaemonSet](../datakit/datakit-daemonset-deploy.md). ???+ info @@ -324,5 +321,5 @@ See [doc](https://kubernetes.io/zh-cn/docs/concepts/configuration/secret/#using- ## More Readings {#more-reading} - [eBPF Collector: Support flow collection in container environment](ebpf.md) -- [Proper use of regular expressions to configure](datakit-input-conf.md#debug-regex) -- [Several configurations of DataKit under Kubernetes](k8s-config-how-to.md) +- [Proper use of regular expressions to configure](../datakit/datakit-input-conf.md#debug-regex) +- [Several configurations of DataKit under Kubernetes](../datakit/k8s-config-how-to.md) diff --git a/internal/export/doc/en/inputs/coredns.md b/internal/export/doc/en/inputs/coredns.md index beb5d0122e..61135c68a5 100644 --- a/internal/export/doc/en/inputs/coredns.md +++ b/internal/export/doc/en/inputs/coredns.md @@ -1,6 +1,8 @@ --- title : 'CoreDNS' summary : 'Collect CoreDNS metrics and logs' +tags: + - 'MIDDLEWARE' __int_icon : 'icon/coredns' dashboard : - desc : 'CoreDNS' @@ -10,10 +12,6 @@ monitor : path : '-' --- - -# CoreDNS - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/couchbase.md b/internal/export/doc/en/inputs/couchbase.md index 575ebd3d77..595a43bb03 100644 --- a/internal/export/doc/en/inputs/couchbase.md +++ b/internal/export/doc/en/inputs/couchbase.md @@ -1,6 +1,8 @@ --- title : 'Couchbase' summary : 'Collect Couchbase server metrics' +tags: + - 'DATA STORES' __int_icon : 'icon/couchbase' dashboard : - desc : 'Couchbase dashboard' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Couchbase - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/couchdb.md b/internal/export/doc/en/inputs/couchdb.md index b0329d8021..d6b246ceb3 100644 --- a/internal/export/doc/en/inputs/couchdb.md +++ b/internal/export/doc/en/inputs/couchdb.md @@ -1,6 +1,8 @@ --- title : 'CouchDB' summary : 'Collect CouchDB server metrics' +tags: + - 'DATA STORES' __int_icon : 'icon/couchdb' dashboard : - desc : 'CouchDB' @@ -10,10 +12,6 @@ monitor : path : 'monitor/en/couchdb' --- - -# CouchDB - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/cpu.md b/internal/export/doc/en/inputs/cpu.md index 429111961d..875def3f1d 100644 --- a/internal/export/doc/en/inputs/cpu.md +++ b/internal/export/doc/en/inputs/cpu.md @@ -1,6 +1,8 @@ --- title : 'CPU' summary : 'Collect metric of cpu' +tags: + - 'HOST' __int_icon : 'icon/cpu' dashboard : - desc : 'CPU' @@ -10,10 +12,6 @@ monitor : path : 'monitor/en/host' --- - -# CPU - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/datakit-logging-how.md b/internal/export/doc/en/inputs/datakit-logging-how.md index 26d36fbc9c..03f76e2570 100644 --- a/internal/export/doc/en/inputs/datakit-logging-how.md +++ b/internal/export/doc/en/inputs/datakit-logging-how.md @@ -1,4 +1,6 @@ -# Overview of DataKit Log Processing +--- +skip: 'not-searchable-on-index-page' +title: 'Overview of DataKit Log Processing' --- This article is used to introduce how DataKit handles logs. [In another document](datakit-logging.md), we introduced how DataKit collects logs. These two documents can be seen together, hoping that everyone has a more comprehensive understanding of the whole log processing. @@ -103,17 +105,17 @@ After reading (receiving) the log from the outside, the basic processing will be If the corresponding log is configured with Pipeline cutting, then each log (including a single multi-line log) will be cut by Pipeline, which is mainly divided into two steps: 1. Grok/JSON cutting: Through Grok/JSON, a single Raw log is cut into structured data. -1. The extracted fields are processed finely, such as [completing IP information](../pipeline/pipeline/pipeline-built-in-function.md#fn-geoip), [desensitizing logs](../pipeline/pipeline/pipeline-built-in-function.md#fn-cover), etc. +1. The extracted fields are processed finely, such as [completing IP information](../pipeline/use-pipeline/pipeline-built-in-function.md#fn-geoip), [desensitizing logs](../pipeline/use-pipeline/pipeline-built-in-function.md#fn-cover), etc. - Blacklist(Filter) -[Filter is a set of filters](datakit-filter.md), which receives a set of structured data and decides whether the data is discarded or not through certain logical judgment. Filter is a set of logical operation rules distributed by the center (actively pulled by DataKit), and its form is roughly as follows: +[Filter is a set of filters](../datakit/datakit-filter.md), which receives a set of structured data and decides whether the data is discarded or not through certain logical judgment. Filter is a set of logical operation rules distributed by the center (actively pulled by DataKit), and its form is roughly as follows: ```txt { source = 'datakit' AND bar IN [ 1, 2, 3] } ``` -If the center configures a log blacklist, assuming that 10 of the 100 cut logs meet the conditions here (that is, the source is `datakit` and the value of the `bar` field appears in the following list), then these 10 logs will not be reported to Guance Cloud and will be silently discarded. You can see the discarded statistics in the [DataKit Monitor](datakit-monitor.md). +If the center configures a log blacklist, assuming that 10 of the 100 cut logs meet the conditions here (that is, the source is `datakit` and the value of the `bar` field appears in the following list), then these 10 logs will not be reported to Guance Cloud and will be silently discarded. You can see the discarded statistics in the [DataKit Monitor](../datakit/datakit-monitor.md). - Report Guance Cloud @@ -124,5 +126,5 @@ Under normal circumstances, there is a delay of about 30s from the time when the ## Extend Reading {#more-readings} - [Overview of DataKit Log Collection](datakit-logging.md) -- [How to Debug Pipeline](../pipeline/pipeline/pipeline-quick-start.md#debug) -- [Row Protocol Black Name Filter](datakit-filter.md) +- [How to Debug Pipeline](../pipeline/use-pipeline/pipeline-quick-start.md#debug) +- [Row Protocol Black Name Filter](../datakit/datakit-filter.md) diff --git a/internal/export/doc/en/inputs/datakit-logging.md b/internal/export/doc/en/inputs/datakit-logging.md index 3dce0a6eed..a00658898d 100644 --- a/internal/export/doc/en/inputs/datakit-logging.md +++ b/internal/export/doc/en/inputs/datakit-logging.md @@ -1,4 +1,6 @@ -# Overview of DataKit Log Collection +--- +skip: 'not-searchable-on-index-page' +title: 'Overview of DataKit Log Collection' --- For the overall observability of log data, it provides a flexible and changeable way of information combination. For this reason, compared with metrics and Tracing, there are more ways to collect and process logs to adapt to different environments, architectures and collection scenarios of technology stacks. diff --git a/internal/export/doc/en/inputs/datakit-profiling-struct.md b/internal/export/doc/en/inputs/datakit-profiling-struct.md index 00bafdd81f..b1c7666717 100644 --- a/internal/export/doc/en/inputs/datakit-profiling-struct.md +++ b/internal/export/doc/en/inputs/datakit-profiling-struct.md @@ -1,4 +1,6 @@ -# Profiling Data Structure +--- +skip: 'not-searchable-on-index-page' +title: 'Profiling Data Structure' --- This page will introduce about profiling data structure used in Datakit. diff --git a/internal/export/doc/en/inputs/datakit-tracing-introduction.md b/internal/export/doc/en/inputs/datakit-tracing-introduction.md index fe5c705050..90bc4f0438 100644 --- a/internal/export/doc/en/inputs/datakit-tracing-introduction.md +++ b/internal/export/doc/en/inputs/datakit-tracing-introduction.md @@ -1,4 +1,7 @@ -# Brief Introduction of Program Tracing System {#intro} +--- +skip: 'not-searchable-on-index-page' +title: 'Brief Introduction of Program Tracing System' +--- Program log is the breadcrumbs of code execution process. Searching for these breadcrumbs can not only find bugs hidden in code: Bug:fontawesome-solid-bug:; more importantly, continuous program log tracking provides an observable way to build program execution process. diff --git a/internal/export/doc/en/inputs/datakit-tracing-struct.md b/internal/export/doc/en/inputs/datakit-tracing-struct.md index b77b6155b2..3907c42afd 100644 --- a/internal/export/doc/en/inputs/datakit-tracing-struct.md +++ b/internal/export/doc/en/inputs/datakit-tracing-struct.md @@ -1,5 +1,7 @@ - -# Datakit Tracing Data Structure +--- +skip: 'not-searchable-on-index-page' +title: 'Datakit Tracing Data Structure' +--- ## Brief {#intro} diff --git a/internal/export/doc/en/inputs/datakit-tracing.md b/internal/export/doc/en/inputs/datakit-tracing.md index 0b24749089..033c7e3773 100644 --- a/internal/export/doc/en/inputs/datakit-tracing.md +++ b/internal/export/doc/en/inputs/datakit-tracing.md @@ -1,4 +1,7 @@ -# Datakit Tracing Overview +--- +skip: 'not-searchable-on-index-page' +title: 'Datakit Tracing Overview' +--- The third-party Tracing data currently supported by Datakit includes: @@ -64,11 +67,11 @@ The tracer generation in the configuration file refers to the currently configur timeout = 1000 ``` -- `customer_tags`: By default, Datakit only picks up the Tags it is interested in (that is, the fields other than message that can be seen in the observation cloud link details), +- `customer_tags`: By default, Datakit only picks up the Tags it is interested in (that is, the fields other than message that can be seen in the Guance Cloud link details), If users are interested in other tags reported on the link, they can add a notification Datakit to this configuration to pick them up. This configuration takes precedence over `[inputs.tracer.tags]`。 - `keep_rare_resource`: If a link from a Resource has not been present within the last hour, the system considers it a rare link and reports it directly to the Data Center. - `omit_err_status`: By default, data is reported directly to the Data Center if there is a Span with Error status in the link, and Datakit can be told to ignore links with some HTTP Error Status (for example, 429 too many requests) if the user needs to ignore it. -- `[inputs.tracer.close_resource]`: Users can configure this to close a Resource link with [span_type](datakit-tracing-struct) as Entry. +- `[inputs.tracer.close_resource]`: Users can configure this to close a Resource link with [span_type](datakit-tracing-struct.md) as Entry. - `[inputs.tracer.sampler]`: Configure the global sampling rate for the current Datakit, [configuration sample](datakit-tracing.md#samplers). - `[inputs.tracer.tags]`: Configure Datakit Global Tags with a lower priority than `customer_tags` 。 - `[inputs.tracer.threads]`: Configure the thread queue of the current Tracing Agent to control the CPU and Memory resources available during data processing. diff --git a/internal/export/doc/en/inputs/db2.md b/internal/export/doc/en/inputs/db2.md index 077d667d71..4c8e0db4d5 100644 --- a/internal/export/doc/en/inputs/db2.md +++ b/internal/export/doc/en/inputs/db2.md @@ -1,6 +1,8 @@ --- -title : 'IBM Db2' -summary : 'Collect IBM Db2 metrics' +title : 'DB2' +summary : 'Collect IBM DB2 metrics' +tags: + - 'DATA STORES' __int_icon : 'icon/db2' dashboard : - desc : 'IBM Db2' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# IBM Db2 - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/ddtrace-attach.md b/internal/export/doc/en/inputs/ddtrace-attach.md index 3cfc1b9f49..448a5959e3 100644 --- a/internal/export/doc/en/inputs/ddtrace-attach.md +++ b/internal/export/doc/en/inputs/ddtrace-attach.md @@ -1,4 +1,12 @@ -# Auto Attach DDTrace-Java Agent +--- +title : 'DDTrace Attach ' +summary : 'Attach DDTrace to Java applications' +tags : + - 'APM' + - 'TRACING' + - 'JAVA' +__int_icon: 'icon/ddtrace' +--- This Java tool is mainly used to inject DDTrace-Java agent into the currently running Java process without manually configuring and restarting the host Java process. @@ -10,7 +18,8 @@ This Java tool is mainly used to inject DDTrace-Java agent into the currently ru [:octicons-history-16:](https://github.com/GuanceCloud/agent-attach-java/releases){:target="_blank"} - + + ## principle {#principle} Attach after the JVM is started and load through the Attach API. This method will execute the agent main method after the agent is loaded. diff --git a/internal/export/doc/en/inputs/ddtrace-cpp.md b/internal/export/doc/en/inputs/ddtrace-cpp.md index 2df8bd0ccd..be2cbb8add 100644 --- a/internal/export/doc/en/inputs/ddtrace-cpp.md +++ b/internal/export/doc/en/inputs/ddtrace-cpp.md @@ -1,6 +1,13 @@ -# C++ - --- +title : 'DDTrace C++' +summary : 'Tracing C++ Application with DDTrace' +tags : + - 'APM' + - 'TRACING' + - 'C/C++' +__int_icon: 'icon/ddtrace' +--- + To apply DDTrace in C++ code, you need to modify the business code, and there is no corresponding SDK integration for common middleware and libraries, **manual instrumentation is required in existing business code**. diff --git a/internal/export/doc/en/inputs/ddtrace-ext-changelog.md b/internal/export/doc/en/inputs/ddtrace-ext-changelog.md index 2fdc728075..93af48dd94 100644 --- a/internal/export/doc/en/inputs/ddtrace-ext-changelog.md +++ b/internal/export/doc/en/inputs/ddtrace-ext-changelog.md @@ -1,8 +1,7 @@ -# changelog - --- - -> *作者: 刘锐、宋龙奇* +skip: 'not-searchable-on-index-page' +title: 'DDTrace Extension Changelog' +--- ## Introduction {#intro} diff --git a/internal/export/doc/en/inputs/ddtrace-ext-java.md b/internal/export/doc/en/inputs/ddtrace-ext-java.md index 82081fd169..b519fc97eb 100644 --- a/internal/export/doc/en/inputs/ddtrace-ext-java.md +++ b/internal/export/doc/en/inputs/ddtrace-ext-java.md @@ -1,8 +1,12 @@ -# Java - --- - -> *作者: 刘锐、宋龙奇* +title : 'DDTrace Extensions' +summary : 'GuanceCloud Extensions on DDTrace' +__int_icon: 'icon/ddtrace' +tags : + - 'DDTRACE' + - 'APM' + - 'TRACING' +--- ## Introduction {#intro} @@ -40,7 +44,7 @@ DDTrace supported version: [v1.30.1](ddtrace-ext-changelog.md#cl-1.30.1-guance) The link information will put the header information of the request and response into the tag.The default state is off. If it needs to be turned on, add the parameter `-Ddd.trace.headers.enabled=true` during startup. -DDTrace supported version: [v1.25.2](ddtrace-ext-changelog/cl-1.25.2-guance) +DDTrace supported version: [v1.25.2](ddtrace-ext-changelog.md#cl-1.25.2-guance) ## supported trace-128-id {#trace_128_bit_id} @@ -50,7 +54,7 @@ DDTrace supported version: [v1.25.2](ddtrace-ext-changelog/cl-1.25.2-guance) The default trace-id of the DDTrace agent is 64 bit, and the Datakit also supports 64 bit trace-id in the received link data. Starting from `v1.11.0`, it supports the `W3C protocol` and supports receiving 128 bit trace-id. However, the trace id sent to the link is still 64 bit. -To this end, secondary development was carried out on the observation cloud, which incorporated `trace_128_bit_id` is placed in the link data and sent to the Datakit, the DDTrace and OTEL links can be concatenated. +To this end, secondary development was carried out on the Guance Cloud, which incorporated `trace_128_bit_id` is placed in the link data and sent to the Datakit, the DDTrace and OTEL links can be concatenated. how to config: @@ -66,7 +70,7 @@ At present, only DDTrace and OTEL are connected in series, and there is currentl ## supported MongoDB obfuscation {#mongo-obfuscation} -Use startup parameter `-DDd.mongo.obfuscation=true` or environment variable `DD_MONGO_OBFUSION` Turn on desensitization. This way, a specific command can be seen from the observation cloud. +Use startup parameter `-DDd.mongo.obfuscation=true` or environment variable `DD_MONGO_OBFUSION` Turn on desensitization. This way, a specific command can be seen from the Guance Cloud. Currently, the types that can achieve desensitization include Int32, Int64, Boolean, Double, and String. The remaining ones have no reference significance, so they are currently not supported. @@ -74,7 +78,7 @@ supported version: - [x] all -DDTrace supported version: [v1.12.1](ddtrace-ext-changelog/cl-1.12.1-guance) +DDTrace supported version: [v1.12.1](ddtrace-ext-changelog.md#cl-1.12.1-guance) ## supported DM8 Database {#dameng-db} Add DM8 Database trace information. @@ -102,7 +106,7 @@ After the declaration is made in the above way, the corresponding method will be -DDTrace supported version: [v1.12.1](ddtrace-ext-changelog/cl-1.12.1-guance) +DDTrace supported version: [v1.12.1](ddtrace-ext-changelog.md#cl-1.12.1-guance) ## ddtrace agent default port {#agent_port} @@ -111,7 +115,7 @@ ddtrace changes the default remote port 8126 to 9529. ## redis command args {#redis-command-args} The Resource in the redis link will only display redis.command information, and will not display parameter information. -Enable this function: start the command to add the environment variable `-Ddd.redis.command.args`, and a tag will be added in the details of the observation cloud link: `redis.command.args=key val`. +Enable this function: start the command to add the environment variable `-Ddd.redis.command.args`, and a tag will be added in the details of the Guance Cloud link: `redis.command.args=key val`. Supported version: @@ -189,7 +193,7 @@ After the SQL is executed, this map will be filled into the Span. The final data supported version: Version 2.3 and above are currently supported. -DDTrace supported version:[v0.113.0](ddtrace-ext-changelog/#ccl-0.113.0-new) +DDTrace supported version:[v0.113.0](ddtrace-ext-changelog.md#ccl-0.113.0-new) ## Dubbo supported {#dubbo} diff --git a/internal/export/doc/en/inputs/ddtrace-golang.md b/internal/export/doc/en/inputs/ddtrace-golang.md index f3cc718844..0f6e90570e 100644 --- a/internal/export/doc/en/inputs/ddtrace-golang.md +++ b/internal/export/doc/en/inputs/ddtrace-golang.md @@ -1,5 +1,12 @@ -# Golang - +--- +title : 'DDTrace Golang' +summary : 'Tracing Golang application with DDTrace' +tags : + - 'DDTRACE' + - 'GOLANG' + - 'APM' + - 'TRACING' +__int_icon: 'icon/ddtrace' --- Integrating APM into Golang involves some level of invasiveness, **requiring modifications to existing code**, but overall, common business code does not need too many changes, simply replace the relevant import packages. diff --git a/internal/export/doc/en/inputs/ddtrace-java.md b/internal/export/doc/en/inputs/ddtrace-java.md index f569d70549..9a6e202a75 100644 --- a/internal/export/doc/en/inputs/ddtrace-java.md +++ b/internal/export/doc/en/inputs/ddtrace-java.md @@ -1,5 +1,12 @@ -# Java - +--- +title : 'DDTrace Java' +summary : 'Tracing Java application with DDTrace' +tags : + - 'DDTRACE' + - 'JAVA' + - 'APM' + - 'TRACING' +__int_icon: 'icon/ddtrace' --- Integrating APM into Java is quite convenient, as it does not require any modifications to the business code; you only need to inject the corresponding agent. diff --git a/internal/export/doc/en/inputs/ddtrace-jmxfetch.md b/internal/export/doc/en/inputs/ddtrace-jmxfetch.md index 9f47eb96cb..8eff754f8b 100644 --- a/internal/export/doc/en/inputs/ddtrace-jmxfetch.md +++ b/internal/export/doc/en/inputs/ddtrace-jmxfetch.md @@ -1,5 +1,10 @@ -# Metric exposure and custom metrics - +--- +title : 'DDTrace JMX' +summary : 'Export JVM metrics with DDTrace JMX' +tags : + - 'DDTRACE' + - 'JAVA' +__int_icon: 'icon/ddtrace' --- ## JMXFetch {#ddtrace-jmxfetch} diff --git a/internal/export/doc/en/inputs/ddtrace-nodejs.md b/internal/export/doc/en/inputs/ddtrace-nodejs.md index 43b26b8414..fd80246863 100644 --- a/internal/export/doc/en/inputs/ddtrace-nodejs.md +++ b/internal/export/doc/en/inputs/ddtrace-nodejs.md @@ -1,6 +1,14 @@ -# NodeJS - --- +title : 'DDTrace NodeJS' +summary : 'Tracing NodeJS applications with DDTrace' +tags : + - 'DDTRACE' + - 'NODEJS' + - 'APM' + - 'TRACING' +__int_icon: 'icon/ddtrace' +--- + ## Install Dependencies {#dependence} diff --git a/internal/export/doc/en/inputs/ddtrace-php.md b/internal/export/doc/en/inputs/ddtrace-php.md index 43373fc2de..03502987a7 100644 --- a/internal/export/doc/en/inputs/ddtrace-php.md +++ b/internal/export/doc/en/inputs/ddtrace-php.md @@ -1,6 +1,14 @@ -# PHP - --- +title : 'DDTrace PHP' +summary : 'Tracing PHP applications with DDTrace' +tags : + - 'DDTRACE' + - 'PHP' + - 'TRACING' + - 'APM' +__int_icon: 'icon/ddtrace' +--- + ## Install Dependencies {#dependence} diff --git a/internal/export/doc/en/inputs/ddtrace-python.md b/internal/export/doc/en/inputs/ddtrace-python.md index 8f668c9b19..3f32401379 100644 --- a/internal/export/doc/en/inputs/ddtrace-python.md +++ b/internal/export/doc/en/inputs/ddtrace-python.md @@ -1,5 +1,12 @@ -# Python - +--- +title : 'DDTrace Phthon' +summary : 'Tracing Python applications with DDTrace' +tags : + - 'DDTRACE' + - 'PYTHON' + - 'APM' + - 'TRACING' +__int_icon: 'icon/ddtrace' --- ## Install Dependencies {#dependence} diff --git a/internal/export/doc/en/inputs/ddtrace-ruby.md b/internal/export/doc/en/inputs/ddtrace-ruby.md index b30c252135..297e9eb1e1 100644 --- a/internal/export/doc/en/inputs/ddtrace-ruby.md +++ b/internal/export/doc/en/inputs/ddtrace-ruby.md @@ -1,5 +1,13 @@ -# Ruby - --- +title : 'DDTrace Ruby' +summary : 'Tracing Ruby applications with DDTrace' +tags : + - 'DDTRACE' + - 'RUBY' + - 'APM' + - 'TRACING' +__int_icon: 'icon/ddtrace' +--- + For integrating APM into Ruby applications, please refer to the [Datadog Ruby Integration Documentation](https://docs.datadoghq.com/tracing/trace_collection/automatic_instrumentation/dd_libraries/ruby/#advanced-configuration){:target="_blank"}. diff --git a/internal/export/doc/en/inputs/ddtrace.md b/internal/export/doc/en/inputs/ddtrace.md index ef3648c2f8..39bd768707 100644 --- a/internal/export/doc/en/inputs/ddtrace.md +++ b/internal/export/doc/en/inputs/ddtrace.md @@ -2,6 +2,10 @@ title : 'DDTrace' summary : 'Receive APM data from DDTrace' __int_icon: 'icon/ddtrace' +tags: + - 'APM' + - 'TRACING' + - 'DDTRACE' dashboard : - desc : 'N/A' path : '-' @@ -10,10 +14,6 @@ monitor : path : '-' --- - -# DDTrace - ---- {{.AvailableArchs}} @@ -200,9 +200,9 @@ Once environment set, the Pod/Node name will attached to related Span tags. ### HTTP Settings {#http} -If Trace data is sent across machines, you need to set [HTTP settings for DataKit](datakit-conf.md#config-http-server). +If Trace data is sent across machines, you need to set [HTTP settings for DataKit](../datakit/datakit-conf.md#config-http-server). -If you have ddtrace data sent to the DataKit, you can see it on [DataKit's monitor](datakit-monitor.md): +If you have ddtrace data sent to the DataKit, you can see it on [DataKit's monitor](../datakit/datakit-monitor.md):
![input-ddtrace-monitor](https://static.guance.com/images/datakit/input-ddtrace-monitor.png){ width="800" } @@ -309,7 +309,7 @@ Starting from DataKit version [1.21.0](../datakit/changelog.md#cl-1.21.0), do no | pod_name | pod_name | pod_name from dd.tags | | _dd.base_service | _dd_base_service | base service | -In the link interface of the observation cloud, tags that are not in the list can also be filtered. +In the link interface of the Guance Cloud, tags that are not in the list can also be filtered. Restore whitelist functionality from DataKit version [1.22.0](../datakit/changelog.md#cl-1.22.0). If there are labels that must be extracted from the first level label list, they can be found in the `customer_tags`. @@ -340,4 +340,4 @@ If the configured whitelist label is in the native `message.meta`, Will convert - [DataKit Tracing Field definition](datakit-tracing-struct.md) - [DataKit general Tracing data collection instructions](datakit-tracing.md) -- [Proper use of regular expressions to configure](datakit-input-conf.md#debug-regex) +- [Proper use of regular expressions to configure](../datakit/datakit-input-conf.md#debug-regex) diff --git a/internal/export/doc/en/inputs/demo.md b/internal/export/doc/en/inputs/demo.md index 5a229a5c68..f7b6b290cf 100644 --- a/internal/export/doc/en/inputs/demo.md +++ b/internal/export/doc/en/inputs/demo.md @@ -1,5 +1,6 @@ - -# Demo 采集器 +--- +skip: 'not-searchable-on-index-page' +title: 'Demo 采集器' --- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/dialtesting.md b/internal/export/doc/en/inputs/dialtesting.md index 4bfef08669..6a289a9f72 100644 --- a/internal/export/doc/en/inputs/dialtesting.md +++ b/internal/export/doc/en/inputs/dialtesting.md @@ -2,6 +2,9 @@ title : 'Diatesting' summary : 'Obtain network performance through network dialing test' __int_icon : 'icon/dialtesting' +tags: + - 'TESTING' + - 'NETWORK' dashboard : - desc : 'N/A' path : '-' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# Network Dial Test - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/dialtesting_json.md b/internal/export/doc/en/inputs/dialtesting_json.md index 87234d696b..60fe5a20e6 100644 --- a/internal/export/doc/en/inputs/dialtesting_json.md +++ b/internal/export/doc/en/inputs/dialtesting_json.md @@ -1,4 +1,16 @@ -# Defining Dialing Test Tasks Through Local JSON +--- +title : 'Customize Dialtesting' +summary : 'Customize your dialtesting task with local configurations' +tags: + - 'TESTING' + - 'NETWORK' +__int_icon : 'icon/dialtesting' +dashboard : + - desc : '暂无' + path : '-' +monitor : + - desc : '暂无' + path : '-' --- In some cases, you may not be able to connect to SAAS's dialing task service. In this case, we can define the dialing task through the local JSON file. diff --git a/internal/export/doc/en/inputs/disk.md b/internal/export/doc/en/inputs/disk.md index c3947792e4..27e130fed9 100644 --- a/internal/export/doc/en/inputs/disk.md +++ b/internal/export/doc/en/inputs/disk.md @@ -1,6 +1,8 @@ --- title : 'Disk' summary : 'Collect metrics of disk' +tags: + - 'HOST' __int_icon : 'icon/disk' dashboard : - desc : 'disk' @@ -10,13 +12,6 @@ monitor : path : 'monitor/en/host' --- - -# Disk - - - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/diskio.md b/internal/export/doc/en/inputs/diskio.md index 935c853f94..f7336037e6 100644 --- a/internal/export/doc/en/inputs/diskio.md +++ b/internal/export/doc/en/inputs/diskio.md @@ -1,6 +1,8 @@ --- title : 'Disk IO' summary : 'Collect metrics of disk io' +tags: + - 'HOST' __int_icon : 'icon/diskio' dashboard : - desc : 'Disk IO' @@ -10,11 +12,6 @@ monitor : path : 'monitor/en/host' --- - -# DiskIO - - ---- {{.AvailableArchs}} @@ -86,7 +83,7 @@ For all of the following data collections, a global tag named `host` is appended ### Collecting disk `await` for Linux {#linux-await} -By default, DataKit cannot collect the disk `await` metric. If you need to obtain this metric, you can collect it by [Custom Collector with Python](../../developers/pythond/). +By default, DataKit cannot collect the disk `await` metric. If you need to obtain this metric, you can collect it by [Custom Collector with Python](../developers/pythond.md). Preconditions diff --git a/internal/export/doc/en/inputs/dk.md b/internal/export/doc/en/inputs/dk.md index e1c6459802..22e4d5ab9d 100644 --- a/internal/export/doc/en/inputs/dk.md +++ b/internal/export/doc/en/inputs/dk.md @@ -1,6 +1,8 @@ --- -title: 'DataKit own metrics collection' -summary: 'Collect DataKit's own operational metrics' +title: 'DataKit metrics' +summary: 'Collect DataKit metrics' +tags: + - 'HOST' __int_icon: 'icon/dk' dashboard: - desc: 'DataKit dashboard' @@ -13,12 +15,6 @@ monitor: path: '-' --- - -# DataKit Metrics - - ---- - {{.AvailableArchs}} · [:octicons-tag-24: Version-1.10.0](../datakit/changelog.md#cl-1.10.0) --- @@ -27,7 +23,7 @@ This Input used to collect Datakit exported metrics, such as runtime/CPU/memory ## Configuration {#config} -After Datakit startup, it will expose a lot of [Prometheus metrics](datakit-metrics.md), and the input `dk` can scrap +After Datakit startup, it will expose a lot of [Prometheus metrics](../datakit/datakit-metrics.md), and the input `dk` can scrap these metrics. ### Collector Configuration {#input-config} diff --git a/internal/export/doc/en/inputs/doc-logging.md b/internal/export/doc/en/inputs/doc-logging.md index 52c329cf2c..83ee866c2e 100644 --- a/internal/export/doc/en/inputs/doc-logging.md +++ b/internal/export/doc/en/inputs/doc-logging.md @@ -1,6 +1,8 @@ - -# Design and Implementation of Datakit Log Collection System - +--- +skip: 'not-searchable-on-index-page' +title: 'Design and Implementation of Datakit Log Collection' +--- + ## Preface {#head} Log collection is an important item of Guance Cloud Datakit, which processes the actively collected or passively received log data and finally uploads it to the Guance Cloud center. Log collection can be divided into "network stream data" and "local disk file" according to data sources. diff --git a/internal/export/doc/en/inputs/doris.md b/internal/export/doc/en/inputs/doris.md index 311ac8c135..783db492d6 100644 --- a/internal/export/doc/en/inputs/doris.md +++ b/internal/export/doc/en/inputs/doris.md @@ -1,6 +1,8 @@ --- title : 'Doris' summary : 'Collect metrics of Doris' +tags: + - 'DATA STORES' __int_icon : 'icon/doris' dashboard : - desc : 'Doris' @@ -10,10 +12,6 @@ monitor : path : 'monitor/en/doris' --- - -# Doris - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/ebpf.md b/internal/export/doc/en/inputs/ebpf.md index 174e041f87..4bdd7f71b9 100644 --- a/internal/export/doc/en/inputs/ebpf.md +++ b/internal/export/doc/en/inputs/ebpf.md @@ -1,6 +1,9 @@ --- title : 'eBPF' summary : 'Collect Linux network data through eBPF' +tags: + - 'EBPF' + - 'NETWORK' __int_icon : 'icon/ebpf' dashboard : - desc : 'N/A' @@ -10,10 +13,6 @@ monitor : path : '-' --- - -# eBPF - ---- {{.AvailableArchs}} @@ -48,10 +47,10 @@ eBPF collector, collecting host network TCP, UDP connection information, Bash ex For DataKit before v1.5.6, you need to execute the installation command to install: - v1.2.13 ~ v1.2.18 - - Install time [specify environment variable](datakit-install.md#extra-envs):`DK_INSTALL_EXTERNALS="datakit-ebpf"` + - Install time [specify environment variable](../datakit/datakit-install.md#extra-envs):`DK_INSTALL_EXTERNALS="datakit-ebpf"` - After the DataKit is installed, manually install the eBPF collector: `datakit install --datakit-ebpf` - v1.2.19+ - - [specify environment variable](datakit-install.md#extra-envs):`DK_INSTALL_EXTERNALS="ebpf"` when installing + - [specify environment variable](../datakit/datakit-install.md#extra-envs):`DK_INSTALL_EXTERNALS="ebpf"` when installing - After the DataKit is installed, manually install the eBPF collector: `datakit install --ebpf` - v1.5.6+ - No manual installation required diff --git a/internal/export/doc/en/inputs/ebpftrace.md b/internal/export/doc/en/inputs/ebpftrace.md index 01f6e4d102..694d80811f 100644 --- a/internal/export/doc/en/inputs/ebpftrace.md +++ b/internal/export/doc/en/inputs/ebpftrace.md @@ -1,6 +1,10 @@ --- -title : 'ebpftrace' +title : 'eBPF Tracing' summary : 'Associate eBPF span and generate trace' +tags: + - 'APM' + - 'TRACING' + - 'EBPF' __int_icon : 'icon/ebpf' dashboard : - desc : 'N/A' @@ -10,11 +14,6 @@ monitor : path : '-' --- - -# ebpftrace - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/elasticsearch.md b/internal/export/doc/en/inputs/elasticsearch.md index 567e3beb1c..df73526e92 100644 --- a/internal/export/doc/en/inputs/elasticsearch.md +++ b/internal/export/doc/en/inputs/elasticsearch.md @@ -1,6 +1,8 @@ --- title : 'ElasticSearch' summary : 'Collect ElasticSearch metrics' +tags: + - 'DATA STORES' __int_icon : 'icon/elasticsearch' dashboard : - desc : 'ElasticSearch' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# ElasticSearch - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/etcd.md b/internal/export/doc/en/inputs/etcd.md index 03a6ed021d..baed26fde7 100644 --- a/internal/export/doc/en/inputs/etcd.md +++ b/internal/export/doc/en/inputs/etcd.md @@ -1,6 +1,8 @@ --- title : 'etcd' summary : 'Collect etcd metrics' +tags: + - 'MIDDLEWARE' __int_icon : 'icon/etcd' dashboard : - desc : 'etcd' @@ -12,11 +14,6 @@ monitor : path : '-' --- - -# etcd - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/external.md b/internal/export/doc/en/inputs/external.md index 0feb392378..a6fc2480f0 100644 --- a/internal/export/doc/en/inputs/external.md +++ b/internal/export/doc/en/inputs/external.md @@ -10,12 +10,6 @@ monitor : path : '-' --- - -# External - - ---- - {{.AvailableArchs}} --- @@ -44,4 +38,4 @@ External Collector launch outside program to collecting data. === "Kubernetes" The collector can now be turned on by [ConfigMap injection collector configuration](../datakit/datakit-daemonset-deploy.md#configmap-setting). - \ No newline at end of file + diff --git a/internal/export/doc/en/inputs/flinkv1.md b/internal/export/doc/en/inputs/flinkv1.md index ff738e5004..e6e9296ae1 100644 --- a/internal/export/doc/en/inputs/flinkv1.md +++ b/internal/export/doc/en/inputs/flinkv1.md @@ -1,6 +1,8 @@ --- title : 'Flink' summary : 'Collect Flink metrics' +tags: + - 'MIDDLEWARE' __int_icon : 'icon/flink' dashboard : - desc : 'Flink' @@ -10,11 +12,6 @@ monitor : path : 'monitor/en/flink' --- - -# Flink - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/gitlab.md b/internal/export/doc/en/inputs/gitlab.md index fba9b3de79..f4880e1d41 100644 --- a/internal/export/doc/en/inputs/gitlab.md +++ b/internal/export/doc/en/inputs/gitlab.md @@ -1,6 +1,9 @@ --- title : 'GitLab' -summary : 'Collect Gitlab metrics and logs' +summary : 'Collect GitLab metrics and logs' +tags: + - 'GITLAB' + - 'CI/CD' __int_icon : 'icon/gitlab' dashboard : - desc : 'GitLab' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# GitLab - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/gpu_smi.md b/internal/export/doc/en/inputs/gpu_smi.md index d812240b4e..1d7207bd18 100644 --- a/internal/export/doc/en/inputs/gpu_smi.md +++ b/internal/export/doc/en/inputs/gpu_smi.md @@ -1,6 +1,8 @@ --- title : 'GPU' summary : 'Collect NVIDIA GPU metrics and logs' +tags: + - 'HOST' __int_icon : 'icon/gpu_smi' dashboard : - desc : 'N/A' @@ -10,10 +12,6 @@ monitor : path : '-' --- - -# GPU - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/graphite.md b/internal/export/doc/en/inputs/graphite.md index 03688c6c92..887ca0151b 100644 --- a/internal/export/doc/en/inputs/graphite.md +++ b/internal/export/doc/en/inputs/graphite.md @@ -1,6 +1,8 @@ --- title : 'Graphite Exporter' summary : 'Collect Graphite Exporter exposed by Graphite Exporter' +tags: + - 'THIRD PARTY' __int_icon : 'icon/graphite' dashboard : - desc : 'N/A' @@ -10,10 +12,6 @@ monitor : path : '-' --- - -# Graphite Exporter Data Collection - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/host_healthcheck.md b/internal/export/doc/en/inputs/host_healthcheck.md index 387c055674..bf99f7ba2a 100644 --- a/internal/export/doc/en/inputs/host_healthcheck.md +++ b/internal/export/doc/en/inputs/host_healthcheck.md @@ -1,6 +1,8 @@ --- title : 'Health Check' summary : 'Regularly check the host process and network health status' +tags: + - 'HOST' __int_icon : 'icon/healthcheck' dashboard : - desc : 'N/A' @@ -10,10 +12,6 @@ monitor : path : '-' --- - -# Health check - - [:octicons-tag-24: Version-1.24.0](../datakit/changelog.md#cl-1.24.0) --- @@ -80,4 +78,4 @@ For all of the following data collections, a global tag named `host` is appended {{$m.FieldsMarkdownTable}} {{end}} -{{ end }} \ No newline at end of file +{{ end }} diff --git a/internal/export/doc/en/inputs/host_processes.md b/internal/export/doc/en/inputs/host_processes.md index 5726da6d13..b4d2db2065 100644 --- a/internal/export/doc/en/inputs/host_processes.md +++ b/internal/export/doc/en/inputs/host_processes.md @@ -1,6 +1,8 @@ --- title : 'Process' -summary : 'Collect host process and it's metrics' +summary : 'Collect host process metrics' +tags: + - 'HOST' __int_icon : 'icon/process' dashboard : - desc : 'process' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Process - - ---- {{.AvailableArchs}} @@ -23,12 +20,10 @@ monitor : The process collector can monitor various running processes in the system, acquire and analyze various metrics when the process is running, Including memory utilization rate, CPU time occupied, current state of the process, port of process monitoring, etc. According to various index information of process running, users can configure relevant alarms in Guance Cloud, so that users can know the state of the process, and maintain the failed process in time when the process fails. - ???+ attention Process collectors (whether objects or metrics) may consume a lot on macOS, causing CPU to soar, so you can turn them off manually. At present, the default collector still turns on the process object collector (it runs once every 5min by default). - - + ## Configuration {#config} @@ -45,15 +40,14 @@ The process collector can monitor various running processes in the system, acqui ### Collector Configuration {#input-config} - === "Host Installation" Go to the `conf.d/{{.Catalog}}` directory under the DataKit installation directory, copy `{{.InputName}}.conf.sample` and name it `{{.InputName}}.conf`. Examples are as follows: - + ```toml {{ CodeBlock .InputSample 4 }} ``` - + Once configured, [restart DataKit](../datakit/datakit-service-how-to.md#manage-service). === "Kubernetes" @@ -61,10 +55,9 @@ The process collector can monitor various running processes in the system, acqui Can be turned on by [ConfigMap Injection Collector Configuration](../datakit/datakit-daemonset-deploy.md#configmap-setting) or [Config ENV_DATAKIT_INPUTS](../datakit/datakit-daemonset-deploy.md#env-setting) . Can also be turned on by environment variables, (needs to be added as the default collector in ENV_DEFAULT_ENABLED_INPUTS): - -{{ CodeBlock .InputENVSample 4 }} - +{{ CodeBlock .InputENVSample 4 }} + ## Metric {#metric} diff --git a/internal/export/doc/en/inputs/hostdir.md b/internal/export/doc/en/inputs/hostdir.md index 10de094261..09daeeb2bc 100644 --- a/internal/export/doc/en/inputs/hostdir.md +++ b/internal/export/doc/en/inputs/hostdir.md @@ -1,6 +1,8 @@ --- title : 'Host Directory' summary : 'Collect metrics from file directories' +tags: + - 'HOST' __int_icon : 'icon/hostdir' dashboard : - desc : 'Host Directory' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Host Directory - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/hostobject.md b/internal/export/doc/en/inputs/hostobject.md index d36ff33773..85d1f86b0c 100644 --- a/internal/export/doc/en/inputs/hostobject.md +++ b/internal/export/doc/en/inputs/hostobject.md @@ -1,6 +1,8 @@ --- title : 'Host Object' summary : 'Collect Basic Host Information' +tags: + - 'HOST' __int_icon : 'icon/hostobject' dashboard : - desc : 'N/A' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# Host Object - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/iis.md b/internal/export/doc/en/inputs/iis.md index be0357bc8e..0e85001160 100644 --- a/internal/export/doc/en/inputs/iis.md +++ b/internal/export/doc/en/inputs/iis.md @@ -1,6 +1,10 @@ --- title : 'IIS' summary : 'Collect IIS metrics' +tags: + - 'WINDOWS' + - 'IIS' + - 'WEB SERVER' __int_icon : 'icon/iis' dashboard : - desc : 'IIS' @@ -10,11 +14,6 @@ monitor : path : 'monitor/en/iis' --- - -# IIS - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/influxdb.md b/internal/export/doc/en/inputs/influxdb.md index a2c675381b..820593a7d4 100644 --- a/internal/export/doc/en/inputs/influxdb.md +++ b/internal/export/doc/en/inputs/influxdb.md @@ -1,6 +1,8 @@ --- title : 'InfluxDB' summary : 'Collect InfluxDB metrics' +tags: + - 'DATA STORES' __int_icon : 'icon/influxdb' dashboard : - desc : 'InfluxDB' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# InfluxDB - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/ipmi.md b/internal/export/doc/en/inputs/ipmi.md index 9e581434dd..46c38c818a 100644 --- a/internal/export/doc/en/inputs/ipmi.md +++ b/internal/export/doc/en/inputs/ipmi.md @@ -1,6 +1,8 @@ --- title : 'IPMI' summary : 'Collect IPMI metrics' +tags: + - 'IPMI' __int_icon : 'icon/ipmi' dashboard : - desc : 'N/A' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# IPMI - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/jaeger.md b/internal/export/doc/en/inputs/jaeger.md index 613a6030fc..5e0da8dc75 100644 --- a/internal/export/doc/en/inputs/jaeger.md +++ b/internal/export/doc/en/inputs/jaeger.md @@ -1,6 +1,10 @@ --- title : 'Jaeger' summary : 'Receive Jaeger APM Data' +tags: + - 'JAEGER' + - 'APM' + - 'TRACING' __int_icon : 'icon/jaeger' dashboard : - desc : 'N/A' @@ -10,11 +14,6 @@ monitor : path : '-' --- - -# Jaeger - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/jenkins.md b/internal/export/doc/en/inputs/jenkins.md index 8c3ea12510..420b939662 100644 --- a/internal/export/doc/en/inputs/jenkins.md +++ b/internal/export/doc/en/inputs/jenkins.md @@ -1,6 +1,9 @@ --- title : 'Jenkins' summary : 'Collect Jenkins metrics and logs' +tags: + - 'JENKINS' + - 'CI/CD' __int_icon : 'icon/jenkins' dashboard : - desc : 'Jenkins' @@ -10,12 +13,6 @@ monitor : path : 'monitor/en/jenkins' --- - -# Jenkins - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/jvm.md b/internal/export/doc/en/inputs/jvm.md index 74b7ca253b..ffaf7cf1a4 100644 --- a/internal/export/doc/en/inputs/jvm.md +++ b/internal/export/doc/en/inputs/jvm.md @@ -1,6 +1,8 @@ --- title : 'JVM' summary : 'Collect the JVM metrics' +tags: + - 'JAVA' __int_icon : 'icon/jvm' dashboard : - desc : 'JVM' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# JVM - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/kafka.md b/internal/export/doc/en/inputs/kafka.md index b3c3108344..0190118c04 100644 --- a/internal/export/doc/en/inputs/kafka.md +++ b/internal/export/doc/en/inputs/kafka.md @@ -1,6 +1,9 @@ --- title : 'Kafka' summary : 'Collect metrics of Kafka' +tags: + - 'MIDDLEWARE' + - 'MESSAGE QUEUES' __int_icon : 'icon/kafka' dashboard : - desc : 'Kafka' @@ -10,11 +13,6 @@ monitor : path : 'monitor/en/kafka' --- - -# Kafka - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/kafkamq.md b/internal/export/doc/en/inputs/kafkamq.md index 85ddf526c6..97e2de6f37 100644 --- a/internal/export/doc/en/inputs/kafkamq.md +++ b/internal/export/doc/en/inputs/kafkamq.md @@ -1,6 +1,9 @@ --- title : 'KafkaMQ' summary : 'Collect metrics and log data via Kafka' +tags: + - 'MESSAGE QUEUES' + - 'LOG' __int_icon : 'icon/kafka' dashboard : - desc : 'N/A' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# Subscribe to Data in Kafka - - ---- {{.AvailableArchs}} @@ -236,7 +234,7 @@ After receiving the messages, KafkaMQ merges them into a package containing `sen ] ``` -The returned data should comply with `v1/write/tracing` interface regulations, [Interface Documentation](apis.md#api-v1-write) +The returned data should comply with `v1/write/tracing` interface regulations, [Interface Documentation](../datakit/apis.md#api-v1-write) The returned header should also indicate the type of the data: the default is `tracing` @@ -244,7 +242,7 @@ The returned header should also indicate the type of the data: the default is `t X-category=tracing ``` -[DataKit api category](apis/#category) +[DataKit api category](../datakit/apis.md#category) As long as the data is received, it means that KafkaMQ has successfully sent the data. Regardless of the parsing, it should return 200 and wait for the next request. @@ -255,7 +253,7 @@ If the parsing fails, it is recommended to set `debug=true` in the KafkaMQ confi External plugins have some constraints: - KafkaMQ receives data but is not responsible for serialization after parsing, because this is a custom development and cannot be used by all users. -- The data parsed by the external plug-in can be sent to [dk apis](apis.md#api-v1-write) , or returned to KafkaMQ and then sent to GuanceCloud. +- The data parsed by the external plug-in can be sent to [dk apis](../datakit/apis.md#api-v1-write) , or returned to KafkaMQ and then sent to GuanceCloud. - The response returned to KafkaMQ must be in the ***line protocol format***, if it is `JSON` format, the header information needs to be included: `Content-Type:application/json` In addition, the returned header information should also include Type: `X-category:tracing` indicates this link information. - External plug-ins should return 200 regardless of parsing failure or not when data is received. - If KafkaMQ sends data to the external plug-in, if there is a timeout, the port does not exist and other problems. Will try to reconnect. Messages from Kafka are no longer consumed. @@ -304,7 +302,7 @@ Connection failure may be a version problem: Please fill in the kafka version co 3. Increase the write capacity of the backend. 4. Remove any network bandwidth restrictions. 5. Increase the number of collectors and expand the number of message partitions to allow more consumers to consume. -6. If the above solutions still cannot solve the problem, you can use [bug-report](../datakit/why-no-data/#bug-report) to collect runtime metrics for analysis. +6. If the above solutions still cannot solve the problem, you can use [bug-report](../datakit/why-no-data.md#bug-report) to collect runtime metrics for analysis. Other issues: diff --git a/internal/export/doc/en/inputs/kubernetes-crd.md b/internal/export/doc/en/inputs/kubernetes-crd.md index ffda1d7b72..ab7820cef8 100644 --- a/internal/export/doc/en/inputs/kubernetes-crd.md +++ b/internal/export/doc/en/inputs/kubernetes-crd.md @@ -1,4 +1,10 @@ -# Kubernetes CRD Extended Collection +--- +title : 'Kubernetes CRD Extended Collection' +summary : 'Create Datakit CRD to collect' +tags : + - 'PROMETHEUS' + - 'KUBERNETES' +__int_icon: 'icon/kubernetes' --- :material-kubernetes: diff --git a/internal/export/doc/en/inputs/kubernetes-prom.md b/internal/export/doc/en/inputs/kubernetes-prom.md index 2f158dce34..a26fddc3ac 100644 --- a/internal/export/doc/en/inputs/kubernetes-prom.md +++ b/internal/export/doc/en/inputs/kubernetes-prom.md @@ -1,6 +1,12 @@ - -# Prometheus Exporter Metric Collection --- +title : 'Kubernetes Prometheus Exporter' +summary : 'Collect Prometheus metrics among Kubernetes Pod' +tags : + - 'PROMETHEUS' + - 'KUBERNETES' +__int_icon: 'icon/kubernetes' +--- + :fontawesome-brands-linux: :material-kubernetes: diff --git a/internal/export/doc/en/inputs/kubernetes-prometheus-operator-crd.md b/internal/export/doc/en/inputs/kubernetes-prometheus-operator-crd.md index 22a2d7356b..a2c564f61a 100644 --- a/internal/export/doc/en/inputs/kubernetes-prometheus-operator-crd.md +++ b/internal/export/doc/en/inputs/kubernetes-prometheus-operator-crd.md @@ -1,8 +1,15 @@ -# Kubernetes Prometheus CRD Support +--- +title : 'Kubernetes Prometheus CRD' +summary : 'Collecting on Prometheus-Operator CRD' +tags : + - 'PROMETHEUS' + - 'KUBERNETES' +__int_icon: 'icon/kubernetes' +--- ## Introduction {#intro} -This document describes how to enable Datakit to support Prometheus-Operator CRD and capture corresponding metrics. +This document describes how to enable Datakit to support Prometheus-Operator CRD and collecting corresponding metrics. ## Description {#description} diff --git a/internal/export/doc/en/inputs/kubernetesprometheus.md b/internal/export/doc/en/inputs/kubernetesprometheus.md index b3885ac1f7..b0e6da556b 100644 --- a/internal/export/doc/en/inputs/kubernetesprometheus.md +++ b/internal/export/doc/en/inputs/kubernetesprometheus.md @@ -1,6 +1,13 @@ -# Datakit KubernetesPrometheus Collector Documentation +--- +title : 'Kubernetes Prometheus Discovery' +summary : 'Auto discovery and collecting Prometheus exported metrics among Kubernetes' +tags : + - 'PROMETHEUS' + - 'KUBERNETES' +__int_icon: 'icon/kubernetes' +--- -[:octicons-tag-24: Version-1.34.0](changelog.md#cl-1.34.0) · [:octicons-beaker-24: Experimental](index.md#experimental) +[:octicons-tag-24: Version-1.34.0](../datakit/changelog.md#cl-1.34.0) · [:octicons-beaker-24: Experimental](../datakit/index.md#experimental) ## Overview {#overview} diff --git a/internal/export/doc/en/inputs/logfwd.md b/internal/export/doc/en/inputs/logfwd.md index 8bbe2ccf06..774a9fa281 100644 --- a/internal/export/doc/en/inputs/logfwd.md +++ b/internal/export/doc/en/inputs/logfwd.md @@ -1,5 +1,17 @@ - -# Collect Pod Log by Sidecar Mode +--- +title : 'Sidecar for Pod Logging' +summary : 'Collect pod logging via Sidecar' +tags: + - 'KUBERNETES' + - 'LOG' + - 'CONTAINER' +__int_icon : 'icon/kubernetes' +dashboard : + - desc : 'N/A' + path : '-' +monitor : + - desc : 'N/A' + path : '-' --- ":material-kubernetes:" @@ -316,7 +328,7 @@ MiB Swap: 2048.0 total, 0.0 free, 2048.0 used. 8793.3 avail Mem - [Socket Log access best practices](logging_socket.md) - [Log collection configuration for specifying pod in Kubernetes](container-log.md#logging-with-annotation-or-label) - [Third-party log access](logstreaming.md) -- [Introduction of DataKit configuration mode in Kubernetes environment](k8s-config-how-to.md) +- [Introduction of DataKit configuration mode in Kubernetes environment](../datakit/k8s-config-how-to.md) - [Install DataKit as DaemonSet](../datakit/datakit-daemonset-deploy.md) - [Deploy `logfwdserver` on DataKit](logfwdserver.md) -- [Proper use of regular expressions to configure](datakit-input-conf.md#debug-regex) +- [Proper use of regular expressions to configure](../datakit/datakit-input-conf.md#debug-regex) diff --git a/internal/export/doc/en/inputs/logfwdserver.md b/internal/export/doc/en/inputs/logfwdserver.md index 1720aea2a2..a2bc16516e 100644 --- a/internal/export/doc/en/inputs/logfwdserver.md +++ b/internal/export/doc/en/inputs/logfwdserver.md @@ -1,6 +1,10 @@ --- -title : 'Log Forward' +title : 'Log Forward Server' summary : 'Collect log data in Pod through sidecar method' +tags: + - 'KUBERNETES' + - 'LOG' + - 'CONTAINER' __int_icon : 'icon/logfwd' dashboard : - desc : 'N/A' @@ -10,12 +14,6 @@ monitor : path : '-' --- - -# {{.InputName}} - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/logging-pipeline-bench.md b/internal/export/doc/en/inputs/logging-pipeline-bench.md index f0fe3e3909..64ae2c9f90 100644 --- a/internal/export/doc/en/inputs/logging-pipeline-bench.md +++ b/internal/export/doc/en/inputs/logging-pipeline-bench.md @@ -1,4 +1,6 @@ -# DataKit Performance Test of Log Collector +--- +skip: 'not-searchable-on-index-page' +title: 'DataKit Performance of Log Collector' --- ## Environment and Tools {#env-tools} diff --git a/internal/export/doc/en/inputs/logging.md b/internal/export/doc/en/inputs/logging.md index e79a59d1e4..f4d40e382c 100644 --- a/internal/export/doc/en/inputs/logging.md +++ b/internal/export/doc/en/inputs/logging.md @@ -1,6 +1,8 @@ --- -title : 'File Log' +title : 'Log Collector' summary : 'Collect log data on the host' +tags: + - 'LOG' __int_icon : 'icon/logging' dashboard : - desc : 'Log' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# File Log - ---- - {{.AvailableArchs}} --- @@ -282,7 +279,7 @@ The maximum length of a single line (including after `multiline_match`) is 32MB, ### Pipeline Configuring and Using {#pipeline} -[Pipeline](../pipeline/pipeline/index.md) is used primarily to cut unstructured text data, or to extract parts of information from structured text, such as JSON. +[Pipeline](../pipeline/index.md) is used primarily to cut unstructured text data, or to extract parts of information from structured text, such as JSON. For log data, there are two main fields to extract: @@ -472,14 +469,14 @@ But in fact, the compression ratio of DataKit will not be so high, because DataK ??? info - Here `*2` takes into account the actual data inflation caused by [Pipeline cutting](../pipeline/pipeline/index.md) and the original data should be brought after cutting in general, so according to the worst case, the calculation here is doubled. + Here `*2` takes into account the actual data inflation caused by [Pipeline cutting](../pipeline/index.md) and the original data should be brought after cutting in general, so according to the worst case, the calculation here is doubled. ## Extended reading {#more-reading} - [DataKit Log Collection Overview](datakit-logging.md) -- [Pipeline: Text Data Processing](../pipeline/pipeline/index.md) -- [Pipeline debugging](../pipeline/pipeline/pipeline-quick-start.md#debug) +- [Pipeline: Text Data Processing](../pipeline/index.md) +- [Pipeline debugging](../pipeline/use-pipeline/pipeline-quick-start.md#debug) - [Pipeline Performance Test and Comparison](logging-pipeline-bench.md) - [Collect container internal logs via Sidecar (logfwd)](logfwd.md) -- [Configure correctly with regular expressions](datakit-input-conf#debug-regex) +- [Configure correctly with regular expressions](../datakit/datakit-input-conf.md#debug-regex) diff --git a/internal/export/doc/en/inputs/logging_socket.md b/internal/export/doc/en/inputs/logging_socket.md index 14db59a76d..a8e1b7e78e 100644 --- a/internal/export/doc/en/inputs/logging_socket.md +++ b/internal/export/doc/en/inputs/logging_socket.md @@ -1,4 +1,15 @@ -# Sample Socket Log Access +--- +title : 'Socket Logging' +summary : 'Accept Java/Go/Python logging framework remotely' +tags: + - 'LOG' +__int_icon : 'icon/socket' +dashboard : + - desc : 'N/A' + path : '-' +monitor : + - desc : 'N/A' + path : '-' --- This article focuses on how the Java Go Python logging framework configures socket output to the Datakit socket log collector. @@ -119,7 +130,8 @@ log4j.appender.server.ReconnectionDelay=10000 > The problem is that the `SocketAppender` sends serialized Java objects instead of plain text. You can use log4j for input, but I do not recommend replacing the logging component. Rather, I rewrite an `Appender` that sends log data as plain text, and you use it with JSON formatting. -Alternative plan: [Logback Logstash](../best-practices/cloud-native/k8s-logback-socket.md#spring-boot){:target="_blank"} + + ## Golang {#golang} diff --git a/internal/export/doc/en/inputs/logstreaming.md b/internal/export/doc/en/inputs/logstreaming.md index 39ceb55429..f5e7676214 100644 --- a/internal/export/doc/en/inputs/logstreaming.md +++ b/internal/export/doc/en/inputs/logstreaming.md @@ -1,6 +1,8 @@ --- title : 'Log Streaming' summary : 'Report log data via HTTP' +tags: + - 'LOG' __int_icon : 'icon/logstreaming' dashboard : - desc : 'N/A' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Log Streaming - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/mem.md b/internal/export/doc/en/inputs/mem.md index ee897babe0..3b8d8cdf9d 100644 --- a/internal/export/doc/en/inputs/mem.md +++ b/internal/export/doc/en/inputs/mem.md @@ -1,21 +1,15 @@ --- -title : 'Mem' +title : 'Memory' summary : 'Collect metrics of host memory' +tags: + - 'HOST' __int_icon : 'icon/mem' dashboard : - desc : 'memory' path : 'dashboard/en/mem' monitor : - desc : 'host detection library' - path : 'monitor/en/host' ---- - - -# Memory - - - - + path : 'monitor/en/host' --- {{.AvailableArchs}} @@ -24,7 +18,6 @@ monitor : Mem collector is used to collect system memory information, some general metrics such as total memory, used memory and so on. - ## Configuration {#config} After successfully installing and starting DataKit, the Mem collector will be enabled by default without the need for manual activation. @@ -32,15 +25,14 @@ After successfully installing and starting DataKit, the Mem collector will be en ### Collector Configuration {#input-config} - === "Host Installation" Go to the `conf.d/{{.Catalog}}` directory under the DataKit installation directory, copy `{{.InputName}}.conf.sample` and name it `{{.InputName}}.conf`. Examples are as follows: - + ```toml {{ CodeBlock .InputSample 4 }} ``` - + Once configured, [restart DataKit](../datakit/datakit-service-how-to.md#manage-service). === "Kubernetes" @@ -48,9 +40,8 @@ After successfully installing and starting DataKit, the Mem collector will be en Can be turned on by [ConfigMap Injection Collector Configuration](../datakit/datakit-daemonset-deploy.md#configmap-setting) or [Config ENV_DATAKIT_INPUTS](../datakit/datakit-daemonset-deploy.md#env-setting) . Can also be turned on by environment variables, (needs to be added as the default collector in ENV_DEFAULT_ENABLED_INPUTS): - -{{ CodeBlock .InputENVSample 4 }} +{{ CodeBlock .InputENVSample 4 }} ## Metric {#metric} diff --git a/internal/export/doc/en/inputs/memcached.md b/internal/export/doc/en/inputs/memcached.md index c47ffc5480..905e5a8eb0 100644 --- a/internal/export/doc/en/inputs/memcached.md +++ b/internal/export/doc/en/inputs/memcached.md @@ -1,6 +1,9 @@ --- title : 'Memcached' summary : 'Collect memcached metrics data' +tags: + - 'CACHING' + - 'MIDDLEWARE' __int_icon : 'icon/memcached' dashboard : - desc : 'Memcached' @@ -10,17 +13,12 @@ monitor : path : '-' --- - -# Memcached - - ---- {{.AvailableArchs}} --- -Memcached collector can collect the running status metrics from Memcached instances, and collect the metrics to the observation cloud to help monitor and analyze various abnormal situations of Memcached. +Memcached collector can collect the running status metrics from Memcached instances, and collect the metrics to the Guance Cloud to help monitor and analyze various abnormal situations of Memcached. ## Config {#config} diff --git a/internal/export/doc/en/inputs/mongodb.md b/internal/export/doc/en/inputs/mongodb.md index c821e473f3..d0dcfb174a 100644 --- a/internal/export/doc/en/inputs/mongodb.md +++ b/internal/export/doc/en/inputs/mongodb.md @@ -1,6 +1,8 @@ --- title : 'MongoDB' summary : 'Collect mongodb metrics data' +tags: + - 'DATA STORES' __int_icon : 'icon/mongodb' dashboard : - desc : 'Mongodb' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# MongoDB - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/mysql.md b/internal/export/doc/en/inputs/mysql.md index 5ddd2d7429..dd6bc60df6 100644 --- a/internal/export/doc/en/inputs/mysql.md +++ b/internal/export/doc/en/inputs/mysql.md @@ -1,6 +1,8 @@ --- title : 'MySQL' summary : 'Collect MySQL metrics and logs' +tags: + - 'DATA STORES' __int_icon : 'icon/mysql' dashboard : - desc : 'MySQL' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# MySQL - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/neo4j.md b/internal/export/doc/en/inputs/neo4j.md index 267e739f49..85d083e564 100644 --- a/internal/export/doc/en/inputs/neo4j.md +++ b/internal/export/doc/en/inputs/neo4j.md @@ -1,6 +1,8 @@ --- title : 'Neo4j' summary : 'Collect Neo4j server metrics' +tags: + - 'DATA STORES' __int_icon : 'icon/neo4j' dashboard : - desc : 'Neo4j' @@ -10,10 +12,6 @@ monitor : path : 'monitor/en/neo4j' --- - -# Neo4j - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/net.md b/internal/export/doc/en/inputs/net.md index caf78ba7be..879b789888 100644 --- a/internal/export/doc/en/inputs/net.md +++ b/internal/export/doc/en/inputs/net.md @@ -1,6 +1,8 @@ --- -title : 'Net' +title : 'Network' summary : 'Collect NIC metrics data' +tags: + - 'HOST' __int_icon: 'icon/net' dashboard : - desc : 'Net' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# Net - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/netflow.md b/internal/export/doc/en/inputs/netflow.md index 38a693bfb8..eb538a905f 100644 --- a/internal/export/doc/en/inputs/netflow.md +++ b/internal/export/doc/en/inputs/netflow.md @@ -1,6 +1,8 @@ --- title : 'NetFlow' summary : 'NetFlow collector can be used to visualize and monitor NetFlow-enabled device.' +tags: + - 'NETWORK' __int_icon : 'icon/netflow' dashboard : - desc : 'NetFlow' @@ -10,10 +12,6 @@ monitor : path : 'monitor/en/netflow' --- - -# NetFlow - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/netstat.md b/internal/export/doc/en/inputs/netstat.md index fa43c060cb..2b93e6bc5f 100644 --- a/internal/export/doc/en/inputs/netstat.md +++ b/internal/export/doc/en/inputs/netstat.md @@ -1,6 +1,9 @@ --- title : 'NetStat' summary : 'Collect NIC traffic metrics data' +tags: + - 'NETWORK' + - 'HOST' __int_icon : 'icon/netstat' dashboard : - desc : 'NetStat' @@ -10,12 +13,6 @@ monitor : path : 'monitor/en/netstat' --- - -# NetStat - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/newrelic.md b/internal/export/doc/en/inputs/newrelic.md index 5c7cbe8c54..8881ce36a0 100644 --- a/internal/export/doc/en/inputs/newrelic.md +++ b/internal/export/doc/en/inputs/newrelic.md @@ -1,6 +1,10 @@ --- title : 'New Relic' summary : 'Receive data from New Relic Agent' +tags: + - 'APM' + - 'NEWRELIC' + - 'TRACING' __int_icon : '' dashboard : - desc : 'N/A' @@ -10,12 +14,6 @@ monitor : path : '-' --- - -# New Relic For .Net - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/nginx.md b/internal/export/doc/en/inputs/nginx.md index fc55b53653..4027ad3c8a 100644 --- a/internal/export/doc/en/inputs/nginx.md +++ b/internal/export/doc/en/inputs/nginx.md @@ -1,6 +1,9 @@ --- title : 'Nginx' summary : 'Collect metrics of Nginx' +tags: + - 'WEB SERVER' + - 'MIDDLEWARE' __int_icon : 'icon/nginx' dashboard : - desc : 'Nginx' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# Nginx - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/nsq.md b/internal/export/doc/en/inputs/nsq.md index 25d8c31f5b..ae76c7d10f 100644 --- a/internal/export/doc/en/inputs/nsq.md +++ b/internal/export/doc/en/inputs/nsq.md @@ -1,6 +1,9 @@ --- title : 'NSQ' summary : 'Collect NSQ metrics' +tags: + - 'MESSAGE QUEUES' + - 'MIDDLEWARE' __int_icon : 'icon/nsq' dashboard : - desc : 'NSQ' @@ -10,11 +13,6 @@ monitor : path : 'monitor/en/nsq' --- - -# NSQ - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/oceanbase.md b/internal/export/doc/en/inputs/oceanbase.md index 46150c112d..4b57b9380f 100644 --- a/internal/export/doc/en/inputs/oceanbase.md +++ b/internal/export/doc/en/inputs/oceanbase.md @@ -1,6 +1,8 @@ --- title : 'OceanBase' summary : 'Collect OceanBase metrics' +tags: + - 'DATA STORES' __int_icon : 'icon/oceanbase' dashboard : - desc : 'OceanBase' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# OceanBase - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/opentelemetry-go.md b/internal/export/doc/en/inputs/opentelemetry-go.md index 40c831305f..0722bda0fa 100644 --- a/internal/export/doc/en/inputs/opentelemetry-go.md +++ b/internal/export/doc/en/inputs/opentelemetry-go.md @@ -1,4 +1,12 @@ -# Golang Example +--- +title : 'OpenTelemetry Golang' +summary : 'Tracing Golang applications with OpenTelemetry' +tags : + - 'GOLANG' + - 'OTEL' + - 'APM' + - 'TRACING' +__int_icon: 'icon/opentelemetry' --- In this paper, the common Web-side three-tier architecture mode is used to realize the link tracing and observability of OTEL. diff --git a/internal/export/doc/en/inputs/opentelemetry-java.md b/internal/export/doc/en/inputs/opentelemetry-java.md index e4cb876f34..8d842be7ad 100644 --- a/internal/export/doc/en/inputs/opentelemetry-java.md +++ b/internal/export/doc/en/inputs/opentelemetry-java.md @@ -1,5 +1,12 @@ -# Java Example - +--- +title : 'OpenTelemetry Java' +summary : 'Tracing Java applications with OpenTelemetry' +tags : + - 'JAVA' + - 'OTEL' + - 'APM' + - 'TRACING' +__int_icon: 'icon/opentelemetry' --- Before using OTEL to send Trace to Datakit, make sure you have [configured the collector](opentelemetry.md). diff --git a/internal/export/doc/en/inputs/opentelemetry.md b/internal/export/doc/en/inputs/opentelemetry.md index 72622500c3..5b3f6ed78b 100644 --- a/internal/export/doc/en/inputs/opentelemetry.md +++ b/internal/export/doc/en/inputs/opentelemetry.md @@ -1,6 +1,10 @@ --- title : 'OpenTelemetry' summary : 'Collect OpenTelemetry metric, log and APM data' +tags : + - 'OTEL' + - 'APM' + - 'TRACING' __int_icon : 'icon/opentelemetry' dashboard : - desc : 'Opentelemetry JVM Monitoring View' @@ -10,10 +14,6 @@ monitor : path : '-' --- - -# OpenTelemetry - - {{.AvailableArchs}} --- @@ -165,7 +165,7 @@ If you want to add custom labels, you can use environment variables: -Dotel.resource.attributes=username=myName,env=1.1.0 ``` -And modify the whitelist in the configuration file so that a custom label can appear in the first level label of the observation cloud link details. +And modify the whitelist in the configuration file so that a custom label can appear in the first level label of the Guance Cloud link details. ```toml customer_tags = ["sink_project", "username","env"] diff --git a/internal/export/doc/en/inputs/oracle.md b/internal/export/doc/en/inputs/oracle.md index cf55796fd7..36688a3788 100644 --- a/internal/export/doc/en/inputs/oracle.md +++ b/internal/export/doc/en/inputs/oracle.md @@ -1,6 +1,8 @@ --- title : 'Oracle' summary : 'Collect Oracle Metric' +tags: + - 'DATA STORES' __int_icon : 'icon/oracle' dashboard : - desc : 'Oracle' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Oracle - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/otel-ext-changelog.md b/internal/export/doc/en/inputs/otel-ext-changelog.md index 27bcc09c54..fb433af49c 100644 --- a/internal/export/doc/en/inputs/otel-ext-changelog.md +++ b/internal/export/doc/en/inputs/otel-ext-changelog.md @@ -1,5 +1,6 @@ -# Guance OTEL ChangeLog - +--- +skip: 'not-searchable-on-index-page' +title: 'Guance OTEL Plugins ChangeLog' --- ## Intro {#intro} diff --git a/internal/export/doc/en/inputs/otel-sql-obfuscation.md b/internal/export/doc/en/inputs/otel-ext-java.md similarity index 70% rename from internal/export/doc/en/inputs/otel-sql-obfuscation.md rename to internal/export/doc/en/inputs/otel-ext-java.md index efae6aed6f..2ae5b5d43b 100644 --- a/internal/export/doc/en/inputs/otel-sql-obfuscation.md +++ b/internal/export/doc/en/inputs/otel-ext-java.md @@ -1,12 +1,20 @@ -# OTEL SQL Obfuscation --- +title : 'OpenTelemetry Extensions' +summary : 'Guance Cloud added more OpenTelemetry plugins' +__int_icon : 'icon/opentelemetry' +tags : + - 'OTEL' + - 'APM' + - 'TRACING' +--- + +## SQL obfuscation {#sql-obfuscation} Before understanding SQL Obfuscation, please read the official preprocessing scheme: [DB statement sanitization](https://opentelemetry.io/docs/instrumentation/java/automatic/agent-config/#db-statement-sanitization) - -## DB statement sanitization {#db-statement-sanitization} +### DB statement sanitization {#db-statement-sanitization} Most of the sentences contain some sensitive data including: user name, mobile phone number, password, card number and so on. Another reason why these data can be filtered out through sensitive processing is to facilitate group filtering operations. @@ -38,10 +46,9 @@ The `OTEL_INSTRUMENTATION_COMMON_DB_STATEMENT_SANITIZER_ENABLED` mentioned above The reason is that the agent's probe is on the function `prepareStatement()` or `Statement()`. - Solve the desensitization problem fundamentally. Need to add probes to `set`. The parameters are cached before `executue()`, and finally the parameters are put into Attributes. -## Guance Branch {#guacne-branch} +### Guance Cloud extension {#guacne-branch} If you want to get the data before cleaning and the value added by the `set` function later, you need to make a new buried point and add an environment variable: @@ -59,15 +66,16 @@ In the end, the link details on GuanceCloud look like this:
trace
+### Question {#question} -## Question {#question} +1. Enabling `-Dotel.jdbc.sql.obfuscation=true`, but SQL obfuscation not disabled. -1. Open `otel.jdbc.sql.obfuscation=true` and `otel.instrumentation.common.db-statement-sanitizer.enabled=true` + You may encounter a mismatch between placeholders and the number of `origin_sql_x` fields. This discrepancy occurs because some parameters have already been replaced by placeholders during the DB statement obfuscation process. - ```text - There may be a mismatch between the number of placeholders and `origin_sql_x`. The reason is that some parameters have been replaced by placeholders in the DB statement cleaning. - ``` +1. Enabling `-Dotel.jdbc.sql.obfuscation=true` and disabling DB statement obfuscation + If the statements are excessively long or contain numerous line breaks, the formatting may become chaotic without proper formatting. Additionally, this can lead to unnecessary traffic consumption. ## More {#more} + If you have other questions, please ask in [GitHub-Guance](https://github.com/GuanceCloud/opentelemetry-java-instrumentation/issues){:target="_blank"} diff --git a/internal/export/doc/en/inputs/otel-guance-exporter.md b/internal/export/doc/en/inputs/otel-guance-exporter.md new file mode 100644 index 0000000000..fb6b78b96e --- /dev/null +++ b/internal/export/doc/en/inputs/otel-guance-exporter.md @@ -0,0 +1,158 @@ +--- +title : 'OpenTelemetry Exportor for Guance Cloud' +summary : 'Export OpenTelemetry data to GuanCe Cloud directly' +__int_icon: 'icon/opentelemetry' +tags : + - 'OTEL' +--- + +GuanCe Cloud has added a `guance-exporter` in the OTEL JAVA Agent, which can send traces and metrics directly to the GuanCe Cloud Center. + +[guance-exporter](https://github.com/GuanceCloud/guance-java-exporter){:target="_blank"} is open source on GitHub and is integrated into the Guance Cloud's secondarily developed [otel-java-agent](https://github.com/GuanceCloud/opentelemetry-java-instrumentation){:target="_blank"}. + +The `guance-exporter` can send data directly to GuanCe Cloud, that is, the endpoint, and the format of the sent data is InfluxDB point. + +## Download {#download} + +Download from [GitHub-Release](https://github.com/GuanceCloud/opentelemetry-java-instrumentation/release){:target="_blank"}, the version is **not lower than** v1.26.3-guance. + +### Agent Usage {#agent} + +```shell +java -javaagent:/usr/local/opentelemetry-javaagent-1.26.3-guance.jar \ +-Dotel.traces.exporter=guance \ +-Dotel.metrics.exporter=guance \ +-Dotel.exporter.guance.endpoint=https://openway.guance.com \ +-Dotel.exporter.guance.token= \ +-jar app.jar +``` + +for k8s: + +```shell +export OTEL_TRACES_EXPORTER=guance +export OTEL_METRICS_EXPORTER=guance +export OTEL_EXPORTER_GUANCE_ENDPOINT=https://openway.guance.com +export OTEL_EXPORTER_GUANCE_TOKEN= +``` + +Parameter Description: + +- `guance` exporter name. +- `endpoint` GuanCe Cloud Center address, usually `https://openway.guance.com`. +- `token` GuanCe Cloud user space token. + +Note: If `otel.metrics.exporter` is not configured, metrics will not be uploaded, the same for `otel.traces.exporter`. However, `endpoint` and `token` are required. + +### Integration {#code-integration} + +Reference the jar package, the pom.xml section is as follows: + +```xml + + + io.opentelemetry + opentelemetry-sdk + 1.26.0 + + + + io.opentelemetry + opentelemetry-exporter-otlp + 1.26.0 + + + + io.opentelemetry + opentelemetry-semconv + 1.26.0-alpha + + + + com.guance + guance-exporter + + 1.4.0 + + +``` + +The version can be used in the maven2 repository with the latest version: [maven2-guance-exporter](https://repo1.maven.org/maven2/com/guance/guance-exporter/){:target="_blank"} + +To initialize a global OpenTelemetry object in a SpringBoot project, you can create a singleton class to manage it. Here is an example: + +First, create a class named OpenTelemetryManager: + +```java +import io.opentelemetry.api.OpenTelemetry; +import io.opentelemetry.api.trace.Tracer; + +public class OpenTelemetryManager { + private static final OpenTelemetry OPEN_TELEMETRY = OpenTelemetryInitializer.initialize(); + + public static OpenTelemetry getOpenTelemetry() { + return OPEN_TELEMETRY; + } + + public static Tracer getTracer(String name) { + return OPEN_TELEMETRY.getTracer(name); + } +} +``` + +Then, in the OpenTelemetryInitializer class, perform the initialization and configuration of OpenTelemetry: + +```java +import com.guance.exporter.guance.trace.GuanceSpanExporter; +import io.opentelemetry.api.OpenTelemetry; +import io.opentelemetry.api.common.Attributes; +import io.opentelemetry.api.trace.propagation.W3CTraceContextPropagator; +import io.opentelemetry.context.propagation.ContextPropagators; +import io.opentelemetry.sdk.OpenTelemetrySdk; +import io.opentelemetry.sdk.resources.Resource; +import io.opentelemetry.sdk.trace.SdkTracerProvider; +import io.opentelemetry.sdk.trace.export.BatchSpanProcessor; +import io.opentelemetry.semconv.resource.attributes.ResourceAttributes; + +public class OpenTelemetryInitializer { + public static OpenTelemetry initialize() { + GuanceSpanExporter guanceExporter = new GuanceSpanExporter(); + guanceExporter.setEndpoint("https://openway.guance.com"); // dataway + guanceExporter.setToken("tkn_0d9ebb47xxxxxxxxx"); // your token + + SdkTracerProvider tracerProvider = SdkTracerProvider.builder() + .addSpanProcessor(BatchSpanProcessor.builder(guanceExporter).build()) + .setResource(Resource.create(Attributes.builder() + .put(ResourceAttributes.SERVICE_NAME, "serviceForJAVA") + .build())) + .build(); + + return OpenTelemetrySdk.builder() + .setTracerProvider(tracerProvider) + .setPropagators(ContextPropagators.create(W3CTraceContextPropagator.getInstance())) + .buildAndRegisterGlobal(); + } +} +``` + +Finally, in your Java files, you can directly obtain the global OpenTelemetry object through the `OpenTelemetryManager` class: + +```java +import io.opentelemetry.api.OpenTelemetry; +import io.opentelemetry.api.trace.Tracer; + +public class YourClass { + private static final OpenTelemetry openTelemetry = OpenTelemetryManager.getOpenTelemetry(); + private static final Tracer tracer = OpenTelemetryManager.getTracer("your-tracer-name"); + + public void yourMethod() { + // use tracer for tracing + tracer.spanBuilder("your-span").startSpan().end(); + // ... + } +} +``` + +## Metric {#metrics} + +`guance-exporter` supports sending metric data to GuanCe Cloud, and the name of the metric set is `otel-service`. diff --git a/internal/export/doc/en/inputs/pinpoint-go.md b/internal/export/doc/en/inputs/pinpoint-go.md index 63896612df..ea8914121d 100644 --- a/internal/export/doc/en/inputs/pinpoint-go.md +++ b/internal/export/doc/en/inputs/pinpoint-go.md @@ -1,4 +1,13 @@ -# Golang example +--- +title : 'PinPoint Golang' +summary : 'Tracing Golang applications with PinPoint' +__int_icon: 'icon/pinpoint' +tags : + - 'PINPOINT' + - 'GOLANG' + - 'APM' + - 'TRACING' +--- - [Pinpoint Golang Agent code repository](https://github.com/pinpoint-apm/pinpoint-go-agent){:target="_blank"} - [Pinpoint Golang code example](https://github.com/pinpoint-apm/pinpoint-go-agent/tree/main/example){:target="_blank"} @@ -458,4 +467,4 @@ Manual detection can be done in two ways in Pinpoint Golang Agent: wg.Wait() } ``` - \ No newline at end of file + diff --git a/internal/export/doc/en/inputs/pinpoint-java.md b/internal/export/doc/en/inputs/pinpoint-java.md index 3b028fd8a4..abcf4ff8d9 100644 --- a/internal/export/doc/en/inputs/pinpoint-java.md +++ b/internal/export/doc/en/inputs/pinpoint-java.md @@ -1,4 +1,13 @@ -# Java example +--- +title : 'PinPoint Java' +summary : 'Tracing Java applications with PinPoint' +__int_icon: 'icon/pinpoint' +tags : + - 'PINPOINT' + - 'JAVA' + - 'APM' + - 'TRACING' +--- Pinpoint Java Agent [Download address](https://github.com/pinpoint-apm/pinpoint/releases){:target="_blank"} diff --git a/internal/export/doc/en/inputs/pinpoint.md b/internal/export/doc/en/inputs/pinpoint.md index 8ca3a708f6..cdf5f1c39a 100644 --- a/internal/export/doc/en/inputs/pinpoint.md +++ b/internal/export/doc/en/inputs/pinpoint.md @@ -1,6 +1,10 @@ --- title : 'Pinpoint' summary : 'Receive Pinpoint Tracing data' +tags : + - 'PINPOINT' + - 'APM' + - 'TRACING' __int_icon : 'icon/pinpoint' dashboard : - desc : 'N/A' @@ -10,11 +14,6 @@ monitor : path : '-' --- - -# Pinpoint - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/ploffload.md b/internal/export/doc/en/inputs/ploffload.md index 3b2ed6fef2..f739deea77 100644 --- a/internal/export/doc/en/inputs/ploffload.md +++ b/internal/export/doc/en/inputs/ploffload.md @@ -1,5 +1,5 @@ --- -title : 'ploffload' +title : 'Pipeline Offload' summary : 'Receive pending data offloaded from the datakit pipeline' __int_icon : 'icon/ploffload' dashboard : @@ -10,11 +10,6 @@ monitor : path : '-' --- - -# PlOffload - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/postgresql.md b/internal/export/doc/en/inputs/postgresql.md index 8a2e6c34d6..dabe9d6a80 100644 --- a/internal/export/doc/en/inputs/postgresql.md +++ b/internal/export/doc/en/inputs/postgresql.md @@ -1,6 +1,8 @@ --- title : 'PostgreSQL' summary : 'Collect PostgreSQL metrics' +tags: + - 'DATA STORES' __int_icon : 'icon/postgresql' dashboard : - desc : 'PostgrepSQL' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# PostgreSQL - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/profile-cpp.md b/internal/export/doc/en/inputs/profile-cpp.md index a32d556ded..1739e3e47b 100644 --- a/internal/export/doc/en/inputs/profile-cpp.md +++ b/internal/export/doc/en/inputs/profile-cpp.md @@ -1,4 +1,11 @@ -# C/C++ Profiling +--- +title : 'Profiling C++' +summary : 'Profling C++ applications' +tags: + - 'C/C++' + - 'PROFILE' +__int_icon: 'icon/profiling' +--- At present, DataKit supports one way to collect C/C + + profiling data, namely [Pyroscope](https://pyroscope.io/){:target="_blank"}. diff --git a/internal/export/doc/en/inputs/profile-dotnet.md b/internal/export/doc/en/inputs/profile-dotnet.md new file mode 100644 index 0000000000..e155465d90 --- /dev/null +++ b/internal/export/doc/en/inputs/profile-dotnet.md @@ -0,0 +1,159 @@ +--- +title: 'Profiling .Net' +summary: '.Net Profiling Integration' +tags: + - '.NET' + - 'PROFILE' +__int_icon: 'icon/profiling' +--- + +Starting from Datakit [:octicons-tag-24: Version-1.12.0](../datakit/changelog.md#cl-1.12.0){:target="_blank"}, support for using [`dd-trace-dotnet`](https://github.com/DataDog/dd-trace-dotnet){:target="_blank"} as an application performance monitoring tool for the `.NET` platform is available. + +## Prerequisites {#prerequisites} + +- `.NET Framework 4.5.2+` / `.NET Core 2.1, 3.1, 5, 6, 7` +- `Linux with glibc 2.17+` / `Windows 10+` / `Windows Server 2012+` + +## Install `dd-trace-dotnet` {#install-dd-trace-dotnet} + + +=== "Linux" + + Add the `Datadog.Trace.Bundle` package: + + ```shell + dotnet add package Datadog.Trace.Bundle + ``` + +=== "Windows" + + Download the `datadog-dotnet-apm--x64.msi` file from [here](https://github.com/DataDog/dd-trace-dotnet/releases){:target="_blank"}, such as `datadog-dotnet-apm-2.34.0-x64.msi`, and install it with administrator privileges. + +???+ Note + + The highest supported version is `dd-trace-dotnet v2.34.0`. Higher versions have not been systematically tested, and compatibility is unknown. If you encounter any issues during use, please contact us. + + + +## Start Profiling {#start-profiling} + +### Linux Platform {#on-linux} + +Navigate to the output directory of your project's compilation or release, where you will find a `datadog` directory. This directory contains the target files generated by `dd-trace-dotnet` after compilation, with different subdirectories for different platforms. + + +???+ Note "Directory Explanation" + + The output directory of .NET Core compilation (build) is usually located under the project root directory in *./bin//*. You can specify the output directory with the `-o|--output ` parameter. In this document, it is assumed to be *./bin/Release/net7.0*. + The output directory of .NET Core release (publish) is by default located under the project root directory in *./bin///publish*. You can also specify the output directory with the `-o|--output ` parameter. In this document, it is assumed to be *./bin/Release/net7.0/publish*. + + + +```shell +$ ls -l bin/Release/net7.0/datadog/ +total 8 +-rwxr--r-- 1 zy staff 101 7 3 21:06 createLogPath.sh +drwxr-xr-x 8 zy staff 256 7 27 16:16 linux-arm64 +drwxr-xr-x 8 zy staff 256 7 27 16:16 linux-musl-x64 +drwxr-xr-x 8 zy staff 256 7 27 16:16 linux-x64 +drwxr-xr-x 8 zy staff 256 7 27 16:16 net461 +drwxr-xr-x 7 zy staff 224 7 27 16:16 net6.0 +drwxr-xr-x 7 zy staff 224 7 27 16:16 netcoreapp3.1 +drwxr-xr-x 12 zy staff 384 7 27 16:16 netstandard2.0 +drwxr-xr-x 6 zy staff 192 7 27 16:16 osx +drwxr-xr-x 7 zy staff 224 7 27 16:16 win-x64 +drwxr-xr-x 7 zy staff 224 7 27 16:16 win-x86 +``` + +Set the `DDTRACE_HOME` environment variable: + +```shell +DDTRACE_HOME="$(pwd)/bin/Release/net7.0/datadog" +``` + +Check if the environment variable is set correctly: + +```shell +ls -l $DDTRACE_HOME +``` + +Set the environment variable and start the project: + +```shell +DD_DOTNET_TRACER_HOME="$DDTRACE_HOME" \ +CORECLR_ENABLE_PROFILING=1 \ +CORECLR_PROFILER="{846F5F1C-F9AE-4B07-969E-05C26BC060D8}" \ +CORECLR_PROFILER_PATH="$DDTRACE_HOME/linux-x64/Datadog.Trace.ClrProfiler.Native.so" \ +LD_PRELOAD="$DDTRACE_HOME/linux-x64/Datadog.Linux.ApiWrapper.x64.so" \ +DD_PROFILING_ENABLED=1 \ +DD_PROFILING_WALLTIME_ENABLED=1 \ +DD_PROFILING_CPU_ENABLED=1 \ +DD_PROFILING_EXCEPTION_ENABLED=1 \ +DD_PROFILING_ALLOCATION_ENABLED=1 \ +DD_PROFILING_LOCK_ENABLED=1 \ +DD_PROFILING_HEAP_ENABLED=1 \ +DD_PROFILING_GC_ENABLED=1 \ +DD_SERVICE=dotnet-profiling-demo DD_ENV=testing DD_VERSION=1.2.3 \ +DD_AGENT_HOST=127.0.0.1 DD_TRACE_AGENT_PORT=9529 \ +dotnet bin/Release/net7.0/.dll +``` + + +???+ Note + + If your current architecture is `Linux arm64`, you will need to modify the settings to `CORECLR_PROFILER_PATH="$DDTRACE_HOME/linux-arm64/Datadog.Trace.ClrProfiler.Native.so"` and + `LD_PRELOAD="$DDTRACE_HOME/linux-arm64/Datadog.Linux.ApiWrapper.x64.so"` + + +After a few minutes, you should be able to view the relevant data in the [Guance Cloud Console](https://console.guance.com/tracing/profile){:target="_blank"}. + +### Windows IIS {#on-windows-iis} + +- Install the [*datadog-dotnet-apm-2.34.0-x64.msi*](https://github.com/DataDog/dd-trace-dotnet/releases/download/v2.34.0/datadog-dotnet-apm-2.34.0-x64.msi){:target="_blank"} component on the server. + +- Edit the `web.config` configuration file in the root path of the project deployed on `IIS`, and add the `` tag inside the `...` tag (if it does not exist, ignore this step) with the following environment variables: + +```xml + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +``` + +- Restart the `IIS` server and visit your project. + +```shell +net stop /y was +net start w3svc +``` + +After a few minutes, you should be able to view the relevant data in the [Guance Cloud Console](https://console.guance.com/tracing/profile){:target="_blank"}. diff --git a/internal/export/doc/en/inputs/profile-go.md b/internal/export/doc/en/inputs/profile-go.md index 526e84c100..be3827193d 100644 --- a/internal/export/doc/en/inputs/profile-go.md +++ b/internal/export/doc/en/inputs/profile-go.md @@ -1,7 +1,12 @@ - -# Go profiling - --- +title : 'Profiling C++' +summary : 'Profling Golang applications' +tags: + - 'GOLANG' + - 'PROFILE' +__int_icon: 'icon/profiling' +--- + Golang built-in tool `pprof` can be used to profiling go process. diff --git a/internal/export/doc/en/inputs/profile-java.md b/internal/export/doc/en/inputs/profile-java.md index f520176134..1f78679d5e 100644 --- a/internal/export/doc/en/inputs/profile-java.md +++ b/internal/export/doc/en/inputs/profile-java.md @@ -1,7 +1,12 @@ - -# Java profiling - --- +title : 'Profiling Java' +summary : 'Profling Java applications' +tags: + - 'JAVA' + - 'PROFILE' +__int_icon: 'icon/profiling' +--- + Datakit now supports two Java profiling tools: [dd-trace-java](https://github.com/DataDog/dd-trace-java){:target="_blank"} and [async-profiler](https://github.com/async-profiler/async-profiler){:target="_blank"}. @@ -136,13 +141,13 @@ After about 10s, there will generate a file named `profiling.html` in current di Requirements: -- [Install DataKit](datakit-install.md). +- [Install DataKit](../datakit/datakit-install.md). - [Enable Profile Inputs](profile.md) - Set your service name(optional) -By default, the program name will be automatically obtained as a 'service' to report the observation cloud. If customization is needed, the service name can be injected when the program starts: +By default, the program name will be automatically obtained as a 'service' to report the Guance Cloud. If customization is needed, the service name can be injected when the program starts: ```shell java -Ddk.service= ... -jar diff --git a/internal/export/doc/en/inputs/profile-nodejs.md b/internal/export/doc/en/inputs/profile-nodejs.md index d0283b43cf..7f40052ce5 100644 --- a/internal/export/doc/en/inputs/profile-nodejs.md +++ b/internal/export/doc/en/inputs/profile-nodejs.md @@ -1,4 +1,11 @@ -# NodeJS Profiling +--- +title : 'Profiling NodeJS' +summary : 'Profling NodeJS applications' +tags: + - 'NODEJS' + - 'PROFILE' +__int_icon: 'icon/profiling' +--- [:octicons-tag-24: Version-1.9.0](../datakit/changelog.md#cl-1.9.0) diff --git a/internal/export/doc/en/inputs/profile-php.md b/internal/export/doc/en/inputs/profile-php.md new file mode 100644 index 0000000000..487578ec8e --- /dev/null +++ b/internal/export/doc/en/inputs/profile-php.md @@ -0,0 +1,138 @@ +--- +title: 'Profiling PHP' +summary: 'PHP Profiling Integration' +tags: + - 'PHP' + - 'PROFILE' +__int_icon: 'icon/profiling' +--- + +Starting from Datakit [:octicons-tag-24: Version-1.13.0](../datakit/changelog.md#cl-1.13.0){:target="_blank"}, support for using [`dd-trace-php`](https://github.com/DataDog/dd-trace-php){:target="_blank"} as an application performance monitoring tool for PHP projects is available. + +## Prerequisites {#prerequisites} + +- Linux X64 with glibc 2.17+, Linux X64 with musl v1.2+ +- PHP 7.1+ NTS (Non-Thread Safe) + +## Install `dd-trace-php` {#install-dd-trace-php} + +Download the installation script [*datadog-setup.php*](https://github.com/DataDog/dd-trace-php/releases/download/0.90.0/datadog-setup.php){:target="_blank"} and execute: + +```shell +wget https://github.com/DataDog/dd-trace-php/releases/download/0.90.0/datadog-setup.php +php datadog-setup.php --enable-profiling +``` + +During the installation process, the script will automatically detect the paths of the `php` and `php-fpm` installed on the current system and ask you to select which programs need profiling. Enter the corresponding numbers as needed. + +```shell +Searching for available php binaries, this operation might take a while. +Multiple PHP binaries detected. Please select the binaries the datadog library will be installed to: + + 1. php --> /usr/bin/php8.1 + 2. php8.1 --> /usr/bin/php8.1 + 3. php-fpm8.1 --> /usr/sbin/php-fpm8.1 + +Select binaries using their number. Multiple binaries separated by space (example: 1 3): 1 2 3 +``` + +If you know the installation path of the current system's `php` or `php-fpm`, you can also specify the `php` path directly via the `--php-bin` parameter when executing the installation script. This can skip the detection and selection steps mentioned above, for example: + +```shell +php datadog-setup.php --enable-profiling --php-bin=/usr/bin/php8.1 --php-bin=/usr/sbin/php-fpm8.1 +``` + +The installation process requires downloading the installation package from `github.com`. Depending on your network conditions, this may take some time. Please wait for the installation program to exit successfully. Afterwards, you can execute the command `php --ri "datadog-profiling"` to verify whether the installation was successful. + +```shell +php --ri "datadog-profiling" + +datadog-profiling + +Version => 0.90.0 +Profiling Enabled => true +Experimental CPU Time Profiling Enabled => true +Allocation Profiling Enabled => true +... +``` + + +???+ Note + + As of the time of writing this document, `Datakit` supports up to [`dd-trace-php v0.90.0`](https://github.com/DataDog/dd-trace-php/releases/tag/0.90.0){:target="_blank"}. Higher versions have not been systematically tested, and compatibility is unknown. If you encounter any issues during use, please feel free to contact us. + + + +## Start Profiling {#start-profiling} + + +=== "PHP CLI" + + Set the following environment variables when starting the PHP script: + ```shell + DD_PROFILING_ENABLED=1 \ + DD_PROFILING_ENDPOINT_COLLECTION_ENABLED=1 \ + DD_PROFILING_ALLOCATION_ENABLED=1 \ + DD_PROFILING_EXPERIMENTAL_CPU_TIME_ENABLED=1 \ + DD_PROFILING_EXPERIMENTAL_TIMELINE_ENABLED=1 \ + DD_PROFILING_LOG_LEVEL=info \ + DD_SERVICE=my-php-cli-app \ + DD_ENV=prod \ + DD_VERSION=1.22.333 \ + DD_AGENT_HOST=127.0.0.1 \ + DD_TRACE_AGENT_PORT=9529 \ + php .php + ``` + +=== "PHP-FPM" + + In the `PHP-FPM` pool configuration directory *pool.d* (by default, there is only one configuration file *www.conf*), add the following environment variables to *www.conf* using the `env` directive: + + ???+ Note + You can try using `php-fpm -i | grep Configuration` to confirm the location of the currently loaded `php-fpm` configuration files: + ```shell + php-fpm8.1 -i | grep Configuration + Configuration File (php.ini) Path => /etc/php/8.1/fpm + ... + ls -l /etc/php/8.1/fpm/pool.d + total 48 + -rw-r--r-- 1 root root 20901 Aug 7 21:22 www.conf + ``` + If your `php-fpm` program is registered as a `systemd` service, you can also try using the command `systemctl status php-fpm.service | grep .conf` to view the current configuration file path: + ```shell + systemctl status php8.1-fpm.service | grep .conf + Process: 629814 ExecStart=/usr/sbin/php-fpm8.1 --nodaemonize --fpm-config /etc/php/8.1/fpm/php-fpm.conf (code=exited, status=0/SUCCESS) + Process: 629818 ExecStartPost=/usr/lib/php/php-fpm-socket-helper install /run/php/php-fpm.sock /etc/php/8.1/fpm/pool.d/www.conf 81 (code=exited, status=0/SUCCESS) + Process: 630872 ExecStopPost=/usr/lib/php/php-fpm-socket-helper remove /run/php/php-fpm.sock /etc/php/8.1/fpm/pool.d/www.conf 81 (code=exited, status=0/SUCCESS) + ... + ``` + + ```shell + ... + ; Pass environment variables like LD_LIBRARY_PATH. All $VARIABLEs are taken from + ; the current environment. + ; Default Value: clean env + ;env[HOSTNAME] = $HOSTNAME + ;env[PATH] = /usr/local/bin:/usr/bin:/bin + ;env[TMP] = /tmp + ;env[TMPDIR] = /tmp + ;env[TEMP] = /tmp + + env[DD_PROFILING_ENABLED]=true + env[DD_PROFILING_ENDPOINT_COLLECTION_ENABLED]=true + env[DD_PROFILING_ALLOCATION_ENABLED]=true + env[DD_PROFILING_EXPERIMENTAL_CPU_TIME_ENABLED]=true + env[DD_PROFILING_EXPERIMENTAL_TIMELINE_ENABLED]=true + env[DD_PROFILING_LOG_LEVEL]=info + env[DD_SERVICE]=my-fpm-app + env[DD_ENV]=dev + env[DD_VERSION]=1.2.33 + env[DD_AGENT_HOST]=127.0.0.1 + env[DD_TRACE_AGENT_PORT]=9529 + + ``` + + Restart `php-fpm` and visit your project. + + +After a few minutes, you should be able to view the relevant data in the [Guance Cloud Console](https://console.guance.com/tracing/profile){:target="_blank"}. diff --git a/internal/export/doc/en/inputs/profile-python.md b/internal/export/doc/en/inputs/profile-python.md index 6bc44cdcfa..231dee6e82 100644 --- a/internal/export/doc/en/inputs/profile-python.md +++ b/internal/export/doc/en/inputs/profile-python.md @@ -1,4 +1,11 @@ -# Python profiling +--- +title : 'Profiling Python' +summary : 'Profling Python applications' +tags: + - 'PYTHON' + - 'PROFILE' +__int_icon: 'icon/profiling' +--- DataKit Python profiling supports [dd-trace-py](https://github.com/DataDog/dd-trace-py){:target="_blank"} and [py-spy](https://github.com/benfred/py-spy){:target="_blank"}. diff --git a/internal/export/doc/en/inputs/profile.md b/internal/export/doc/en/inputs/profile.md index d66b9e76f7..3ebeaa1f1f 100644 --- a/internal/export/doc/en/inputs/profile.md +++ b/internal/export/doc/en/inputs/profile.md @@ -1,6 +1,8 @@ --- title : 'Profiling' summary : 'Collect application runtime performance data' +tags: + - 'PROFILE' __int_icon: 'icon/profiling' dashboard : - desc : 'N/A' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Profiling - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/prom.md b/internal/export/doc/en/inputs/prom.md index 5ac7b7a9d1..4faf96e7fd 100644 --- a/internal/export/doc/en/inputs/prom.md +++ b/internal/export/doc/en/inputs/prom.md @@ -1,6 +1,9 @@ --- title : 'Prometheus Exporter' summary : 'Collect metrics exposed by Prometheus Exporter' +tags: + - 'PROMETHEUS' + - 'THIRD PARTY' __int_icon : 'icon/prometheus' dashboard : - desc : 'N/A' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# Prometheus Exporter Data Collection - ---- - {{.AvailableArchs}} --- @@ -64,7 +62,7 @@ The Prom collector supports configuring additional request headers in HTTP reque ### About Tag Renaming {#tag-rename} -> Note: For [DataKit global tag key](datakit-conf#update-global-tag), renaming them is not supported here. +> Note: For [DataKit global tag key](../datakit/datakit-conf.md#update-global-tag), renaming them is not supported here. `tags_rename` can replace the tag name of the collected Prometheus Exporter data, and `overwrite_exist_tags` is used to open the option of overwriting existing tags. For example, for existing Prometheus Exporter data: diff --git a/internal/export/doc/en/inputs/prom_remote_write.md b/internal/export/doc/en/inputs/prom_remote_write.md index 0d7d416d24..595aa81be5 100644 --- a/internal/export/doc/en/inputs/prom_remote_write.md +++ b/internal/export/doc/en/inputs/prom_remote_write.md @@ -1,6 +1,9 @@ --- title : 'Prometheus Remote Write' summary : 'Receive metrics via Prometheus Remote Write' +tags: + - 'THIRD PARTY' + - 'PROMETHEUS' __int_icon : 'icon/prometheus' dashboard : - desc : 'N/A' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# Prometheus Remote Write - - ---- {{.AvailableArchs}} @@ -107,7 +105,7 @@ We can rename some of the tag names that an indicator already has by configuring In addition, when the renamed tag key is the same as the existing tag key: You can configure whether to overwrite the existing tag key by `overwrite`. -> Note: For [DataKit global tag key](datakit-conf.md#update-global-tag), renaming them is not supported here. +> Note: For [DataKit global tag key](../datakit/datakit-conf.md#update-global-tag), renaming them is not supported here. ## Metric {#metric} diff --git a/internal/export/doc/en/inputs/promtail.md b/internal/export/doc/en/inputs/promtail.md index 92fbe85054..02507a8080 100644 --- a/internal/export/doc/en/inputs/promtail.md +++ b/internal/export/doc/en/inputs/promtail.md @@ -1,6 +1,8 @@ --- title : 'Promtail' summary : 'Collect log data reported by Promtail' +tags: + - 'THIRD PARTY' __int_icon : 'icon/promtail' dashboard : - desc : 'N/A' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Promtail Data Access - - ---- :fontawesome-brands-linux: :fontawesome-brands-windows: :fontawesome-brands-apple: :material-kubernetes: :material-docker: diff --git a/internal/export/doc/en/inputs/proxy.md b/internal/export/doc/en/inputs/proxy.md index 4b1be95d60..44ed9f4523 100644 --- a/internal/export/doc/en/inputs/proxy.md +++ b/internal/export/doc/en/inputs/proxy.md @@ -10,11 +10,6 @@ monitor : path : '-' --- - -# DataKit Proxy - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/pushgateway.md b/internal/export/doc/en/inputs/pushgateway.md index 87ea1126f5..7ba6652db6 100644 --- a/internal/export/doc/en/inputs/pushgateway.md +++ b/internal/export/doc/en/inputs/pushgateway.md @@ -1,6 +1,9 @@ --- title : 'Prometheus Push Gateway' summary : 'Enable Pushgateway API to receive Prometheus metric data' +tags: + - 'THIRD PARTY' + - 'PROMETHEUS' __int_icon : 'icon/pushgateway' dashboard : - desc : 'N/A' @@ -10,10 +13,6 @@ monitor : path : '-' --- - -# Pushgateway - ---- {{.AvailableArchs}} · [:octicons-tag-24: Version-1.31.0](../datakit/changelog.md#cl-1.31.0) · [:octicons-beaker-24: Experimental](../datakit/index.md#experimental) @@ -126,7 +125,7 @@ spec: done ``` -- The metric set seen on the Observability Cloud page is `pushgateway`, with the field being `count`. +- The metric set seen on the Guance Cloud page is `pushgateway`, with the field being `count`. ## Metric Sets and Tags {#measurement-and-tags} diff --git a/internal/export/doc/en/inputs/python-profiling.md b/internal/export/doc/en/inputs/python-profiling.md index 1aef5e801f..f1dcf76641 100644 --- a/internal/export/doc/en/inputs/python-profiling.md +++ b/internal/export/doc/en/inputs/python-profiling.md @@ -1,4 +1,7 @@ -# Python profiling +--- +title: 'Python profiling' +skip: 'not-searchable-on-index-page' +--- Currently, DataKit Python profiling supports [ddtrace](https://github.com/DataDog/dd-trace-py){:target="_blank"} and [py-spy](https://github.com/benfred/py-spy){:target="_blank"}. @@ -62,7 +65,7 @@ After the program starts, ddtrace will collect data regularly (once every minute `py-spy` is a non-invasive Python performance metrics sampling tool provided by the open source community that runs alone and has low impact on target program load. -`Py-spy` will output sample data in different formats to local files according to specified parameters by default. To simplify the integration of `py-spy` and DataKit, observation cloud provides a branch version [py-spy-for-Datakit](https://github.com/GuanceCloud/py-spy-for-datakit){:target="_blank"}, which is based on the original version with a few modifications and supports automatic profiling. +`Py-spy` will output sample data in different formats to local files according to specified parameters by default. To simplify the integration of `py-spy` and DataKit, Guance Cloud provides a branch version [py-spy-for-Datakit](https://github.com/GuanceCloud/py-spy-for-datakit){:target="_blank"}, which is based on the original version with a few modifications and supports automatic profiling. Data is sent to DataKit. - Installation @@ -140,4 +143,4 @@ py-spy-for-datakit datakit \ -- python3 server.py # Note that you need to add an extra space before python3 here ``` -If there is no error, wait a minute or two to view the specific performance index data on the observation cloud platform [Application Performance Monitoring -> Profile](https://console.guance.com/tracing/profile){:target="_blank"} page. +If there is no error, wait a minute or two to view the specific performance index data on the Guance Cloud platform [Application Performance Monitoring -> Profile](https://console.guance.com/tracing/profile){:target="_blank"} page. diff --git a/internal/export/doc/en/inputs/pythond.md b/internal/export/doc/en/inputs/pythond.md index 15e3577658..e66a376e94 100644 --- a/internal/export/doc/en/inputs/pythond.md +++ b/internal/export/doc/en/inputs/pythond.md @@ -1,6 +1,8 @@ --- title : 'Pythond' summary : 'Collect data via Python extension' +tags: + - 'PYTHON' __int_icon : 'icon/pythond' dashboard : - desc : 'N/A' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Developing Custom Collector with Python - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/rabbitmq.md b/internal/export/doc/en/inputs/rabbitmq.md index ff60d0d1bb..632928f50e 100644 --- a/internal/export/doc/en/inputs/rabbitmq.md +++ b/internal/export/doc/en/inputs/rabbitmq.md @@ -1,6 +1,9 @@ --- title : 'RabbitMQ' summary : 'Collect RabbitMQ metrics' +tags: + - 'MESSAGE QUEUES' + - 'MIDDLEWARE' __int_icon : 'icon/rabbitmq' dashboard : - desc : 'RabbitMQ' @@ -10,11 +13,6 @@ monitor : path : 'monitor/en/rabbitmq' --- - -# RabbitMQ - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/redis.md b/internal/export/doc/en/inputs/redis.md index 58d45e4881..8402d2e3ab 100644 --- a/internal/export/doc/en/inputs/redis.md +++ b/internal/export/doc/en/inputs/redis.md @@ -1,6 +1,9 @@ --- title : 'Redis' summary : 'Collect Redis metrics and logs' +tags: + - 'CACHING' + - 'MIDDLEWARE' __int_icon : 'icon/redis' dashboard : - desc : 'Redis' @@ -10,11 +13,6 @@ monitor: path: 'monitor/en/redis' --- - -# Redis - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/rum.md b/internal/export/doc/en/inputs/rum.md index b107a1e11e..0c8007abf3 100644 --- a/internal/export/doc/en/inputs/rum.md +++ b/internal/export/doc/en/inputs/rum.md @@ -1,6 +1,8 @@ --- title : 'RUM' summary : 'Collect user behavior data' +tags: + - 'RUM' __int_icon : 'icon/rum' dashboard : - desc : 'N/A' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# RUM - - ---- {{.AvailableArchs}} @@ -41,7 +38,7 @@ RUM (Real User Monitor) collector is used to collect user access monitoring data It is recommended that RUM be deployed separately on the public network, not with existing services (such as Kubernetes cluster). As the traffic on RUM interface may be very large, the traffic within the cluster will be disturbed by it, and some possible resource scheduling mechanisms within the cluster may affect the operation of RUM services. -- On the DataKit [install IP geo-Repository](datakit-tools-how-to.md#install-ipdb) +- On the DataKit [install IP geo-Repository](../datakit/datakit-tools-how-to.md#install-ipdb) - Since [1.2.7](../datakit/changelog.md#cl-1.2.7), due to the adjustment of the installation method of IP geographic information base, the default installation no longer comes with its own IP information base, but needs to be installed manually. ### Collector Configuration {#input-config} @@ -73,7 +70,7 @@ It is recommended that RUM be deployed separately on the public network, not wit ### Security Restrictions {#security-setting} -Because RUM DataKit is generally deployed in a public network environment, but only uses a specific [DataKit API](apis.md) interface, other interfaces cannot be opened. API access control can be tightened by modifying the following *public_apis* field configuration in *datakit.conf*: +Because RUM DataKit is generally deployed in a public network environment, but only uses a specific [DataKit API](../datakit/apis.md) interface, other interfaces cannot be opened. API access control can be tightened by modifying the following *public_apis* field configuration in *datakit.conf*: ```toml [http_api] @@ -91,7 +88,7 @@ Because RUM DataKit is generally deployed in a public network environment, but o ] ``` -Other interfaces are still available, but can only be accessed natively through the DataKit, such as [query DQL](datakit-dql-how-to.md) or view [DataKit running status](datakit-tools-how-to.md#using-monitor). +Other interfaces are still available, but can only be accessed natively through the DataKit, such as [query DQL](../datakit/datakit-dql-how-to.md) or view [DataKit running status](../datakit/datakit-tools-how-to.md#using-monitor). ### Disable DataKit 404 Page {#disable-404} diff --git a/internal/export/doc/en/inputs/sec-checker.md b/internal/export/doc/en/inputs/sec-checker.md index 57423282e8..ca1f9e9917 100644 --- a/internal/export/doc/en/inputs/sec-checker.md +++ b/internal/export/doc/en/inputs/sec-checker.md @@ -1,5 +1,9 @@ - -# Scheck Access +--- +title : 'SCheck' +summary : '接收 SCheck 采集的数据' +tags: + - 'SECURITY' +__int_icon: 'icon/scheck' --- Operating system support: :fontawesome-brands-linux: :fontawesome-brands-windows: diff --git a/internal/export/doc/en/inputs/sensors.md b/internal/export/doc/en/inputs/sensors.md index e5ac119c5e..f98b82abc8 100644 --- a/internal/export/doc/en/inputs/sensors.md +++ b/internal/export/doc/en/inputs/sensors.md @@ -1,6 +1,8 @@ --- -title : 'Hardware Sensors data collection' +title : 'Hardware Sensors' summary : 'Collect hardware temperature indicators through Sensors command' +tags: + - 'HOST' __int_icon : 'icon/sensors' dashboard : - desc : 'N/A' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# Hardware temperature Sensors - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/skywalking.md b/internal/export/doc/en/inputs/skywalking.md index 8518d5ffe9..29b6159961 100644 --- a/internal/export/doc/en/inputs/skywalking.md +++ b/internal/export/doc/en/inputs/skywalking.md @@ -1,6 +1,10 @@ --- title : 'SkyWalking' summary : 'SkyWalking Tracing Data Ingestion' +tags: + - 'APM' + - 'TRACING' + - 'SKYWALKING' __int_icon : 'icon/skywalking' dashboard : - desc : 'Skywalking JVM Monitoring View' @@ -10,12 +14,6 @@ monitor : path : '-' --- - -# SkyWalking - - ---- - :fontawesome-brands-linux: :fontawesome-brands-windows: :fontawesome-brands-apple: :material-kubernetes: :material-docker: --- diff --git a/internal/export/doc/en/inputs/smart.md b/internal/export/doc/en/inputs/smart.md index fe9eefcb95..db3d7ad580 100644 --- a/internal/export/doc/en/inputs/smart.md +++ b/internal/export/doc/en/inputs/smart.md @@ -1,6 +1,8 @@ --- title : 'Disk S.M.A.R.T' summary : 'Collect disk metrics through smartctl' +tags: + - 'HOST' __int_icon : 'icon/smartctl' dashboard : - desc : 'N/A' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Disk S.M.A.R.T - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/snmp.md b/internal/export/doc/en/inputs/snmp.md index 97410426e0..feacb6311a 100644 --- a/internal/export/doc/en/inputs/snmp.md +++ b/internal/export/doc/en/inputs/snmp.md @@ -1,6 +1,8 @@ --- title : 'SNMP' summary : 'Collect metrics and object data from SNMP devices' +tags: + - 'SNMP' __int_icon : 'icon/snmp' dashboard : - desc : 'N/A' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# SNMP - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/socket.md b/internal/export/doc/en/inputs/socket.md index 95954b92f4..3de20915e7 100644 --- a/internal/export/doc/en/inputs/socket.md +++ b/internal/export/doc/en/inputs/socket.md @@ -1,6 +1,8 @@ --- title : 'Socket' summary : 'Collect metrics of TCP/UDP ports' +tags: + - 'NETWORK' __int_icon : 'icon/socket' dashboard : - desc : 'Socket' @@ -10,12 +12,6 @@ monitor : path : 'monitor/en/socket' --- - -# Socket - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/solr.md b/internal/export/doc/en/inputs/solr.md index e7cd294b24..b61b7d8183 100644 --- a/internal/export/doc/en/inputs/solr.md +++ b/internal/export/doc/en/inputs/solr.md @@ -1,6 +1,8 @@ --- title : 'Solr' summary : 'Collect Solr metrics' +tags: + - 'DATA STORES' __int_icon : 'icon/solr' dashboard : - desc : 'Solr' @@ -10,11 +12,6 @@ monitor : path : 'monitor/en/solr' --- - -# Solr - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/sqlserver.md b/internal/export/doc/en/inputs/sqlserver.md index 55218eb38b..d6a199f3db 100644 --- a/internal/export/doc/en/inputs/sqlserver.md +++ b/internal/export/doc/en/inputs/sqlserver.md @@ -1,6 +1,8 @@ --- title : 'SQLServer' summary : 'Collect SQLServer Metrics' +tags: + - 'DATA STORES' __int_icon : 'icon/sqlserver' dashboard : - desc : 'SQLServer' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# SQLServer - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/ssh.md b/internal/export/doc/en/inputs/ssh.md index c691d77736..2051baff3a 100644 --- a/internal/export/doc/en/inputs/ssh.md +++ b/internal/export/doc/en/inputs/ssh.md @@ -1,6 +1,8 @@ --- title : 'SSH' summary : 'Collect SSH metrics' +tags: + - 'HOST' __int_icon : 'icon/ssh' dashboard : - desc : 'SSH' @@ -10,11 +12,6 @@ monitor : path : 'monitor/en/ssh' --- - -# SSH - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/statsd.md b/internal/export/doc/en/inputs/statsd.md index 12505bdea4..5313167609 100644 --- a/internal/export/doc/en/inputs/statsd.md +++ b/internal/export/doc/en/inputs/statsd.md @@ -1,6 +1,8 @@ --- title : 'StatsD' summary : 'Collect metrics reported by StatsD' +tags: + - 'THIRD PARTY' __int_icon : 'icon/statsd' dashboard : - desc : 'N/A' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# StatsD data access - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/swap.md b/internal/export/doc/en/inputs/swap.md index a3f946f3dc..2868813ca6 100644 --- a/internal/export/doc/en/inputs/swap.md +++ b/internal/export/doc/en/inputs/swap.md @@ -1,6 +1,8 @@ --- title : 'Swap' summary : 'Collect metrics of host swap' +tags: + - 'HOST' __int_icon : 'icon/swap' dashboard : - desc : 'Swap' @@ -10,11 +12,6 @@ monitor : path : 'monitor/en/host' --- - -# Swap - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/system.md b/internal/export/doc/en/inputs/system.md index f4879afaa2..389136e110 100644 --- a/internal/export/doc/en/inputs/system.md +++ b/internal/export/doc/en/inputs/system.md @@ -1,6 +1,8 @@ --- title : 'System' summary : 'Collecting metrics data related to the host system' +tags: + - 'HOST' __int_icon : 'icon/system' dashboard : - desc : 'System' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# System - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/tdengine.md b/internal/export/doc/en/inputs/tdengine.md index 75130f3ebf..a09f8fc159 100644 --- a/internal/export/doc/en/inputs/tdengine.md +++ b/internal/export/doc/en/inputs/tdengine.md @@ -1,6 +1,8 @@ --- title : 'TDengine' summary : 'Collect TDengine metrics' +tags: + - 'DATA STORES' __int_icon : 'icon/tdengine' dashboard : - desc : 'TDengine' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# TDengine - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/telegraf.md b/internal/export/doc/en/inputs/telegraf.md index 45c3bfe7e3..2002cd74da 100644 --- a/internal/export/doc/en/inputs/telegraf.md +++ b/internal/export/doc/en/inputs/telegraf.md @@ -1,6 +1,11 @@ -# Telegraf Data Access - --- +title : 'Telegraf' +summary : 'Accept Telegraf collected data' +tags: + - 'THIRD PARTY' +__int_icon: 'icon/telegraf' +--- + :fontawesome-brands-linux: :fontawesome-brands-windows: :fontawesome-brands-apple: @@ -9,10 +14,10 @@ ???+ attention - Before using Telegraf, it is recommended to determine whether DataKit can meet the expected data collection. If DataKit is already supported, Telegraf is not recommended for collection, which may lead to data conflicts and cause problems in use. + Before using Telegraf, it is recommended to determine whether Datakit can meet the expected data collection. If DataKit is already supported, Telegraf is not recommended for collection, which may lead to data conflicts and cause problems in use. + Telegraf is an open source data collection tool. DataKit can access the data set collected by Telegraf through simple configuration. - ## Telegraf Installation {#install} @@ -40,7 +45,7 @@ Default profile path: - Linux: `/etc/telegraf/telegraf.conf` - Windows: The configuration file is in the Telegraf binary sibling directory (depending on the specific installation) -> Note: Under Mac, if you [install through `datakit install --telegraf`](datakit-tools-how-to#extras), the configuration directory is the same as Linux. +> Note: Under Mac, if you [install through `datakit install --telegraf`](../datakit/datakit-tools-how-to.md#extras), the configuration directory is the same as Linux. Modify the configuration file as follows: diff --git a/internal/export/doc/en/inputs/tomcat.md b/internal/export/doc/en/inputs/tomcat.md index 95a23f2fd2..c105474764 100644 --- a/internal/export/doc/en/inputs/tomcat.md +++ b/internal/export/doc/en/inputs/tomcat.md @@ -1,6 +1,9 @@ --- title : 'Tomcat' summary : 'Collect Tomcat metrics' +tags: + - 'WEB SERVER' + - 'MIDDLEWARE' __int_icon : 'icon/tomcat' dashboard : - desc : 'Tomcat' @@ -10,12 +13,6 @@ monitor : path : 'monitor/en/tomcat' --- - -# Tomcat - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/inputs/tracing-propagator.md b/internal/export/doc/en/inputs/tracing-propagator.md index eefa6f84b4..ee3b3f3edd 100644 --- a/internal/export/doc/en/inputs/tracing-propagator.md +++ b/internal/export/doc/en/inputs/tracing-propagator.md @@ -1,4 +1,11 @@ -# Propagation Among Multiple Tracing Stack +--- +title : 'Tracing Propagator' +summary : 'Propagation between multiple tracing agents' +tags : + - 'APM' + - 'TRACING' +__int_icon: '' +--- This article mainly introduces the products of multiple tracing stacks, and how to realize tracing information propagation them in distributed services. diff --git a/internal/export/doc/en/inputs/windows_event.md b/internal/export/doc/en/inputs/windows_event.md index 05fa631f9f..55845fc1cb 100644 --- a/internal/export/doc/en/inputs/windows_event.md +++ b/internal/export/doc/en/inputs/windows_event.md @@ -1,6 +1,8 @@ --- title : 'Windows Event' summary : 'Collect event logs in Windows' +tags: + - 'WINDOWS' __int_icon : 'icon/winevent' dashboard : - desc : 'N/A' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Windows Event - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/zabbix_exporter.md b/internal/export/doc/en/inputs/zabbix_exporter.md index 8206fd1c09..08fcc73277 100644 --- a/internal/export/doc/en/inputs/zabbix_exporter.md +++ b/internal/export/doc/en/inputs/zabbix_exporter.md @@ -1,6 +1,8 @@ --- -title : 'Zabbix_export' +title : 'Zabbix Export' summary : 'Zabbix real-time data exporter' +tags: + - 'THIRD PARTY' __int_icon : 'icon/zabbix' dashboard : - desc : 'N/A' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Zabbix RealTime Exporter - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/en/inputs/zipkin.md b/internal/export/doc/en/inputs/zipkin.md index 539d65b952..851817251d 100644 --- a/internal/export/doc/en/inputs/zipkin.md +++ b/internal/export/doc/en/inputs/zipkin.md @@ -1,6 +1,10 @@ --- title : 'Zipkin' summary : 'Zipkin Tracing Data Ingestion' +tags : + - 'ZIPKIN' + - 'APM' + - 'TRACING' __int_icon : 'icon/zipkin' dashboard : - desc : 'N/A' @@ -10,12 +14,6 @@ monitor : path : '-' --- - -# Zipkin - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/en/k8s-config-how-to.md b/internal/export/doc/en/k8s-config-how-to.md index e829a744a2..4dd019e316 100644 --- a/internal/export/doc/en/k8s-config-how-to.md +++ b/internal/export/doc/en/k8s-config-how-to.md @@ -9,8 +9,8 @@ The current version (> 1.2. 0) of DataKit supports the following configurations: - Configure with [conf](datakit-daemonset-deploy.md#configmap-setting) - Configure with [ENV](datakit-daemonset-deploy.md#using-k8-env) -- Configure with [Annotation](container-log.md#logging-with-annotation-or-label) -- Configure with [CRD](kubernetes-crd.md) +- Configure with [Annotation](../integrations/container-log.md#logging-with-annotation-or-label) +- Configure with [CRD](../integrations/kubernetes-crd.md) - Configure with [Git](datakit-conf.md#using-gitrepo) - Configure with [DCA](dca.md) @@ -38,7 +38,7 @@ In K8s, when we start DataKit, we can [inject many environment variables](dataki ENV_INPUT_XXX_YYY ``` -Here `XXX` refers to the collector name, and `YYY` is a specific configuration field in the collector configuration, such as `ENV_INPUT_CPU_PERCPU` to adjust whether [CPU collector](cpu.md) _collects metrics per CPU core_ (by default, this option is turned off by default, that is, CPU metrics per core are not collected) +Here `XXX` refers to the collector name, and `YYY` is a specific configuration field in the collector configuration, such as `ENV_INPUT_CPU_PERCPU` to adjust whether [CPU collector](../integrations/cpu.md) _collects metrics per CPU core_ (by default, this option is turned off by default, that is, CPU metrics per core are not collected) It should be noted that not all collectors support ENV injection at present. The collector that supports ENV injection is generally [the collector that is turned on by default](datakit-input-conf.md#default-enabled-inputs). The collector opened through ConfigMap also supports ENV injection (see if the collector supports it), and **the default is based on ENV injection**. @@ -74,13 +74,13 @@ spec: ... ``` -> Note: Currently, the Annotation mode does not support the mainstream collector opening (currently only [Prom](prom.md)) is supported). More collectors will be added later. +> Note: Currently, the Annotation mode does not support the mainstream collector opening (currently only [Prom](../integrations/prom.md)) is supported). More collectors will be added later. So far, in DataKit, there are only three mainstream configuration modes in K8s environment, and their priorities are gradually improved, that is, conf mode has the lowest priority, ENV takes the second place, and Annotation mode has the highest priority. - Configuration via CRD -CRD is a widely used configuration method of Kubernetes. Compared with Annotation, CRD does not need to change the deployment of collected objects, and it is less invasive. See [DataKit CRD Usage Documentation](kubernetes-crd.md). +CRD is a widely used configuration method of Kubernetes. Compared with Annotation, CRD does not need to change the deployment of collected objects, and it is less invasive. See [DataKit CRD Usage Documentation](../integrations/kubernetes-crd.md). ### Git configuration {#git} diff --git a/internal/export/doc/en/pipeline/pipeline-category.md b/internal/export/doc/en/pipeline/pipeline-category.md index ec95ef37f5..344a3d8edd 100644 --- a/internal/export/doc/en/pipeline/pipeline-category.md +++ b/internal/export/doc/en/pipeline/pipeline-category.md @@ -135,8 +135,8 @@ The above four types of Pipeline directories store Pipeline scripts as follows: There are four matching policies for data and script names, which will be judged from the 4th (highest priority) to the 1st, and if the high priority policy is satisfied, the low priority policy will not be executed: 1. Add the script file extension `.p` of Pipeline to the data characteristic string generated according to the input data, and find the script of the corresponding category. -1. The default script of the data category set for all data under this category in the observation cloud console. -1. The mapping relationship between data and scripts set in the observation cloud console. +1. The default script of the data category set for all data under this category in the Guance Cloud console. +1. The mapping relationship between data and scripts set in the Guance Cloud console. 1. Specify the script in the collector configuration file. All of the above data and script matching strategies depend on the data feature strings of the data; for different types of data, the generation strategies of the data feature strings are different: diff --git a/internal/export/doc/en/why-no-data.md b/internal/export/doc/en/why-no-data.md index 6065c6b307..d2c18b20a5 100644 --- a/internal/export/doc/en/why-no-data.md +++ b/internal/export/doc/en/why-no-data.md @@ -1,309 +1,331 @@ -# How to Troubleshoot No Data Problems +# How to Troubleshoot No Data Issues + --- -After deploying data collection (collected through DataKit or Function), sometimes you can't see the corresponding data update on the page of Guance Cloud, and you are tired every time you check it. In order to alleviate this situation, you can adopt the following steps to gradually encircle the problem of "why there is no data". +After deploying Datakit, you would typically check the collected data directly from the monitoring cloud page. If everything is normal, the data will appear on the page quickly (the most direct is the host/process data in "Infrastructure"). However, for various reasons, there may be issues in the data collection, processing, or transmission process, leading to no data issues. -## How to trouble shooting {#how-to-trouble-shoot} +The following analyzes the possible causes of no data from several aspects: -For better trouble shooting, we developed the following step-by-step map: +- [Network Related](why-no-data.md#iss-network) +- [Host Related](why-no-data.md#iss-host) +- [Startup Issues](why-no-data.md#iss-start-fail) +- [Collector Configuration Related](why-no-data.md#iss-input-config) +- [Global Configuration Related](why-no-data.md#iss-global-settings) +- [Others](why-no-data.md#iss-others) -``` mermaid -graph TD - %% node definitions - no_data[No Data]; - debug_fail{Still Not Working}; - monitor[Check Monitor]; - debug_input[Debug input.conf]; - read_faq[Check Input FAQ]; - dql[DQL Query]; - beyond_usage[Beyond Usage?]; - pay[Pay]; - filtered[Filted?]; - sinked[Sinked?]; - check_time[Check Machine Time]; - check_token[Check Workspace Token]; - check_version[Check Datakit Version]; - dk_service_ok[Datakit Service OK?]; - check_changelog[Check Changelog]; - is_input_ok[Input Running?]; - is_input_enabled[Input Enabled?]; - enable_input[Enable Input]; - dataway_upload_ok[Upload OK?]; - ligai[Fire Ligai Issue]; +## Network Related {#iss-network} - no_data --> dk_service_ok --> check_time --> check_token --> check_version --> check_changelog; +Network-related issues are relatively straightforward and common, and can be investigated using other methods (such as `ping/nc/curl` commands). - no_data --> monitor; - no_data --> debug_input --> debug_fail; - debug_input --> read_faq; - no_data --> read_faq --> debug_fail; - dql --> debug_fail; +### Cannot Connect to the Data Source {#iss-input-connect} - monitor --> beyond_usage -->|No| debug_fail; - beyond_usage -->|Yes| pay; +Since Datakit is installed on specific machines/Nodes, when it collects certain data, it may be unable to access the target due to network reasons (such as MySQL/Redis, etc.). In this case, you can find the problem through the collector debug: - monitor --> is_input_enabled; +```shell +$ datakit debug --input-conf conf.d/db/redis.conf +loading /usr/local/datakit/conf.d/db/redis.conf.sample with 1 inputs... +running input "redis"(0th)... +[E] get error from input = redis, source = redis: dial tcp 192.168.3.100:6379: connect: connection refused | Ctrl+c to exit. +``` - is_input_enabled -->|Yes| is_input_ok; - is_input_enabled -->|No| enable_input --> debug_input; +### Cannot Connect to Dataway {#iss-dw-connect} - monitor --> is_input_ok -->|No| debug_input; +If the host where Datakit is located cannot connect to Dataway, you can test the 404 page of Dataway: - is_input_ok -->|Yes| dataway_upload_ok -->|Yes| dql; - is_input_ok --> filtered --> sinked; +```shell +$ curl -I http[s]://your-dataway-addr:port +HTTP/2 404 +date: Mon, 27 Nov 2023 06:03:47 GMT +content-type: text/html +content-length: 792 +access-control-allow-credentials: true +access-control-allow-headers: Content-Type, Content-Length +access-control-allow-methods: POST, OPTIONS, GET, PUT +access-control-allow-origin: * +``` - trouble_shooting[Collect Running Info]; +If the status code 404 is displayed, it means the connection with Dataway is normal. - debug_fail --> trouble_shooting; - trouble_shooting --> ligai; -``` +For SAAS, the Dataway address is `https://openway.guance.com`. -## Checking input config {#check-input-conf} +If you get the following result, it indicates there is a network problem: -[:octicons-tag-24: Version-1.9.0](changelog.md#cl-1.9.0) +```shell +curl: (6) Could not resolve host: openway.guance.com +``` -We can run Datakit command to test if input configure able to collect data. For input `disk`, we can test like this: +If you find an error log like the following in the Datakit log (*/var/log/datakit/log*), it means there is a problem with the current environment's connection to Dataway, which may be restricted by the firewall: -``` shell -$ datakit debug --input-conf /usr/local/datakit/conf.d/host/disk.conf -loading /usr/local/datakit/conf.d/host/disk.conf with 1 inputs... -running input "disk"(0th)... -disk,device=/dev/disk3s1s1,fstype=apfs free=167050518528i,inodes_free=1631352720i,inodes_free_mb=1631i,inodes_total=1631702195i,inodes_total_mb=1631i,inodes_used=349475i,inodes_used_mb=0i,inodes_used_percent=0.02141781760611041,total=494384795648i,used=327334277120i,used_percent=66.21042556354438 1685509141064064000 -disk,device=/dev/disk3s6,fstype=apfs free=167050518528i,inodes_free=1631352720i,inodes_free_mb=1631i,inodes_total=1631352732i,inodes_total_mb=1631i,inodes_used=12i,inodes_used_mb=0i,inodes_used_percent=0.0000007355858585707753,total=494384795648i,used=327334277120i,used_percent=66.21042556354438 1685509141064243000 -disk,device=/dev/disk3s2,fstype=apfs free=167050518528i,inodes_free=1631352720i,inodes_free_mb=1631i,inodes_total=1631353840i,inodes_total_mb=1631i,inodes_used=1120i,inodes_used_mb=0i,inodes_used_percent=0.00006865463350366712,total=494384795648i,used=327334277120i,used_percent=66.21042556354438 1685509141064254000 -disk,device=/dev/disk3s4,fstype=apfs free=167050518528i,inodes_free=1631352720i,inodes_free_mb=1631i,inodes_total=1631352837i,inodes_total_mb=1631i,inodes_used=117i,inodes_used_mb=0i,inodes_used_percent=0.000007171961659450622,total=494384795648i,used=327334277120i,used_percent=66.21042556354438 1685509141064260000 -disk,device=/dev/disk1s2,fstype=apfs free=503996416i,inodes_free=4921840i,inodes_free_mb=4i,inodes_total=4921841i,inodes_total_mb=4i,inodes_used=1i,inodes_used_mb=0i,inodes_used_percent=0.00002031760067015574,total=524288000i,used=20291584i,used_percent=3.8703125 1685509141064266000 -disk,device=/dev/disk1s1,fstype=apfs free=503996416i,inodes_free=4921840i,inodes_free_mb=4i,inodes_total=4921873i,inodes_total_mb=4i,inodes_used=33i,inodes_used_mb=0i,inodes_used_percent=0.000670476462923769,total=524288000i,used=20291584i,used_percent=3.8703125 1685509141064271000 -disk,device=/dev/disk1s3,fstype=apfs free=503996416i,inodes_free=4921840i,inodes_free_mb=4i,inodes_total=4921892i,inodes_total_mb=4i,inodes_used=52i,inodes_used_mb=0i,inodes_used_percent=0.0010565042873756677,total=524288000i,used=20291584i,used_percent=3.8703125 1685509141064276000 -disk,device=/dev/disk3s5,fstype=apfs free=167050518528i,inodes_free=1631352720i,inodes_free_mb=1631i,inodes_total=1634318356i,inodes_total_mb=1634i,inodes_used=2965636i,inodes_used_mb=2i,inodes_used_percent=0.18146011694186712,total=494384795648i,used=327334277120i,used_percent=66.21042556354438 1685509141064280000 -disk,device=/dev/disk2s1,fstype=apfs free=3697000448i,inodes_free=36103520i,inodes_free_mb=36i,inodes_total=36103578i,inodes_total_mb=36i,inodes_used=58i,inodes_used_mb=0i,inodes_used_percent=0.00016064889745830732,total=5368664064i,used=1671663616i,used_percent=31.137422570532436 1685509141064285000 -disk,device=/dev/disk3s1,fstype=apfs free=167050518528i,inodes_free=1631352720i,inodes_free_mb=1631i,inodes_total=1631702197i,inodes_total_mb=1631i,inodes_used=349477i,inodes_used_mb=0i,inodes_used_percent=0.0214179401512444,total=494384795648i,used=327334277120i,used_percent=66.21042556354438 1685509141064289000 -# 10 points("M"), 98 time series from disk, cost 1.544792ms | Ctrl+c to exit. +```shell +request url https://openway.guance.com/v1/write/xxx/token=tkn_xxx failed: ... context deadline exceeded... ``` -Here Datakit will start input `disk` and print the collected points to terminal. At the bottom, there will show some result about these point: +## Host Related {#iss-host} -- Collected points and its category(Here we got 10 points of category `Metric`) -- Time series number(only for `Metric`) -- Input name, here is `disk` -- Collect cost, here is *1.544ms* +Host-related issues are generally more subtle and often overlooked, making them difficult to troubleshoot (the lower-level, the harder to check), so here is a general list: -We can interrupt the test by *Ctrl + c*. We can also change the `interval`(if exist) config to get test result more frequently. +### Timestamp Anomaly {#iss-timestamp} - -???+ attention +On Linux/Mac, you can view the current system time by entering `date`: - Some inputs that accept HTTP requests(such as DDTrace/RUM), we need to setup a HTTP server(`--http-listen=[IP:Port]`), then use some tools (such as `curl`) to post testing data to Datakit's HTTP server. For detailed info, see help with `datakit help debug`. - - -## Check whether the DataWay connection is normal {#check-connection} - ```shell -curl http[s]://your-dataway-addr:port +$ date +Wed Jul 21 16:22:32 CST 2021 ``` -For SAAS, this is generally the case: +In some cases, it may display like this: ```shell -curl https://openway.guance.com +$ date +Wed Jul 21 08:22:32 UTC 2021 ``` -If the following results are obtained, the network is problematic: +This is because the former is China's Eastern Eight Zone time, and the latter is Greenwich Mean Time, which differs by 8 hours. However, in fact, the timestamps of these two times are the same. -```shell -curl: (6) Could not resolve host: openway.guance.com -``` +If the current system time is significantly different from your mobile phone time, especially if it is ahead, then the monitoring cloud will not display this 'future' data. -If you find an error log such as the following, it indicates that there is something wrong with the connection with DataWay, which may be restricted by the firewall: +Additionally, if the time is behind, the default viewer of the monitoring cloud will not display this data (the default viewer usually shows data from the last 15 minutes), but you can adjust the viewing time range in the viewer. -```shell -request url https://openway.guance.com/v1/write/xxx/token=tkn_xxx failed: ... context deadline exceeded... -``` +### Host Hardware/Software Not Supported {#iss-os-arch} + +Some collectors are not supported on specific platforms, even if the configuration is turned on, there will be no data collection: -## Check Machine Time {#check-local-time} +- There is no CPU collector on macOS +- Collectors such as Oracle/DB2/OceanBase/eBPF can only run on Linux +- Some Windows-specific collectors cannot run on non-Windows platforms +- The Datakit-Lite distribution only compiles a small number of collectors, and most collectors are not included in its binaries -On Linux/Mac, enter `date` to view the current system time: +## Startup Issues {#iss-start-fail} + +Since Datakit adapts to mainstream OS/Arch types, it is possible to encounter deployment issues on some OS distribution versions, and the service may be in an abnormal state after installation, preventing Datakit from starting. + +### *datakit.conf* is incorrect {#iss-timestamp} + +*datakit.conf* is the main configuration entry for Datakit. If it is incorrectly configured (TOML syntax error), it will prevent Datakit from starting, and the Datakit log will contain a similar log (different syntax error messages will vary): ```shell -date -Wed Jul 21 16:22:32 CST 2021 +# Manually start the datakit program +$ /usr/local/datakit +2023-11-27T14:17:15.578+0800 INFO main datakit/main.go:166 load config from /user/local/datakit/conf.d/datakit.conf... +2023-11-27T14:15:56.519+0800 ERROR main datakit/main.go:169 load config failed: bstoml.Decode: toml: line 19 (last key "default_enabled_inputs"): expected value but found "ulimit" instead ``` -In some cases, this may appear as follows: +### Service Exception {#iss-service-fail} -```txt -Wed Jul 21 08:22:32 UTC 2021 +Due to certain reasons (such as Datakit service startup timeout), the `datakit` service may be in an invalid state, which requires [some operations to reset the Datakit system service](datakit-service-how-to.md#when-service-failed). + +### Keep Restarting or Not Starting {#iss-restart-notstart} + +In Kubernetes, insufficient resources (memory) may cause Datakit OOM, leaving no time to perform specific data collection. You can check whether the memory resources allocated in *datakit.yaml* are appropriate: + +```yaml + containers: + - name: datakit + image: pubrepo.guance.com/datakit:datakit: + resources: + requests: + memory: "128Mi" + limits: + memory: "4Gi" + command: ["stress"] + args: ["--vm", "1", "--vm-bytes", "150M", "--vm-hang", "1"] ``` -This is because the former is China's East Eight District Time, while the latter is Greenwich Mean Time, with a difference of 8 hours, but in fact, the timestamps of these two times are the same. +Here, the system requires a minimum of 128MB of memory ( `requests` ) to start Datakit. If the Datakit's own collection tasks are heavy, the default 4GB may not be enough, and you need to adjust the `limits` parameter. -If the time of the current system is far from that of your mobile phone, especially if it is ahead of time, there is no "future" data on Guance Cloud. +### Port Occupied {#iss-port-in-use} -In addition, if the time lag, you will see some old data. Don't think that paranormal happened. In fact, it is very likely that the time of DataKit's machine is still in the past. +Some Datakit collectors need to open specific ports locally to receive data from the outside. If these ports are occupied, the corresponding collector will not be able to start, and the Datakit log will show information similar to the port being occupied. - -## See if the data is blacklisted or discarded by Pipeline {#filter-pl} - -If [a blacklist](datakit-filter)(such as a log blacklist) is configured, newly collected data may be filtered out by the blacklist. +The mainstream collectors affected by the port include: -Similarly, if data is [discarded](pipeline#fb024a10) in Pipeline, it may also cause the center to see the data. +- HTTP's 9529 port: some collectors (such as eBPF/Oracle/LogStream, etc.) push data to Datakit's HTTP interface +- StatsD 8125 port: used to receive StatsD's metric data (such as JVM-related metrics) +- OpenTelemetry 4317 port: used to receive OpenTelemetry metrics and Trace data -## View monitor page {#monitor} +For more port occupancy, see [this list](datakit-port.md). -See [here](datakit-monitor.md) - -## Check whether there is data generated through dql {#dql} - -This function is supported on Windows/Linux/Mac, where Windows needs to be executed in Powershell. +### Insufficient Disk Space {#iss-disk-space} -> This feature is supported only in DataKit [1.1.7-rc7](changelog#cl-1.1.7-rc7). +Insufficient disk space can lead to undefined behavior (Datakit's own logs cannot be written/diskcache cannot be written, etc.). -```shell -datakit dql -> Here you can enter the DQL query statement... -``` +### Resource Occupation Exceeds Default Settings {#iss-ulimit} -For non-data investigation, it is recommended to compare the collector document to see the name of the corresponding indicator set. Take MySQL collector as an example. At present, there are the following indicator sets in the document: +After Datakit is installed, the number of files it opens is 64K by default (Linux). If a collector (such as the file log collector) opens too many files, subsequent files cannot be opened, affecting the collection. -- `mysql` -- `mysql_schema` -- `mysql_innodb` -- `mysql_table_schema` -- `mysql_user_status` +In addition, opening too many files proves that the current collection has a serious congestion, which may consume too much memory resources, leading to OOM. -If mysql does not have data, check whether `mysql` has data: +## Collector Configuration Related {#iss-input-config} -``` python -# -# Look at the metrics of the most recent mysql on the mysql collector, specifying the host (in this case tan-air.local) -# -M::mysql {host='tan-air.local'} order by time desc limit 1 -``` +Collector configuration-related issues are generally straightforward, mainly including the following possibilities: -To see if a host object has been reported, where `tan-air.local` is the expected host name: +### No Data Generated by the Data Source {#iss-input-nodata} -```python -O::HOST {host='tan-air.local'} -``` +Take MySQL as an example, some slow query or lock-related collections will only have data when corresponding problems occur, otherwise, there will be no data in the corresponding view. -View the existing APM (tracing) data classification: +In addition, some exposed Prometheus metric data collection objects may have the Prometheus metric collection turned off by default (or only localhost can access), which requires corresponding configuration on the data collection object for Datakit to collect this data. This kind of problem with no data generation can be verified through the above collector debug function ( `datakit debug --input-conf ...` ). -```python -show_tracing_service() -``` +For log collection, if the corresponding log file does not have new (relative to after Datakit starts) log data, even if there is already log data in the current log file, there will be no data collection. -By analogy, if the data is reported, it can always be found through DQL. As for the front end, it may be blocked by other filtering conditions. Through DQL, no matter the data collected by DataKit or other means (such as Function), the original data can be viewed at zero distance, which is especially convenient for Debug. +For Profiling data collection, the service/application being collected also needs to turn on the corresponding function to have Profiling data pushed to Datakit. -## Check the DataKit program log for exceptions {#check-log} +### Access Permissions {#iss-permission-deny} -The last 10 ERROR and WARN logs are given through Shell/Powershell +Many middleware collections require user authentication configuration, some of which need to be set on the data collection object. If the corresponding username/password configuration is incorrect, Datakit collection will report an error. -```shell -# Shell -cat /var/log/datakit/log | grep "WARN\|ERROR" | tail -n 10 +In addition, since Datakit uses toml configuration, some password strings require additional escaping (usually URL-Encode), for example, if the password contains the `@` character, it needs to be converted to `%40`. -# Powershell -Select-String -Path 'C:\Program Files\datakit\log' -Pattern "ERROR", "WARN" | Select-Object Line -Last 10 -``` +> Datakit is gradually optimizing the existing password string (connection string) configuration method to reduce this kind of escaping. -- If a description such as `Beyond...` is found in the log, it is generally because the amount of data exceeds the free amount. -- If some words such as `ERROR/WARN` appear, it indicates that DataKit has encountered some problems in general. +### Version Issues {#iss-version-na} -### View the running log of a single collector {#check-input-log} +The software version of some user environments may be too old or too new, not in the Datakit support list, which may cause collection problems. -If no exception is found, you can directly view the operation log of a single collector: +It may also be possible to collect even if it is not in the Datakit support list, and we cannot test all version numbers. When there are incompatible/unsupported versions, feedback is needed. -```shell -# shell -tail -f /var/log/datakit/log | grep "<采集器名称>" | grep "WARN\|ERROR" +### Collector Bug {#iss-datakit-bug} -# powershell -Get-Content -Path "C:\Program Files\datakit\log" -Wait | Select-String "<采集器名称>" | Select-String "ERROR", "WARN" -``` +You can directly go to [Bug Report](why-no-data.md#bug-report). -也 You can also remove the filter such as `ERROR/WARN` and directly view the corresponding collector log. If you don't have enough logs, open the debug log in `datakit.conf` to see more logs: +### Collector Configuration Not Enabled {#iss-no-input} -```toml -# DataKit >= 1.1.8-rc0 -[logging] - ... - level = "debug" # 将默认的 info 改为 debug - ... +Since Datakit only recognizes the `.conf` configuration files in the *conf.d* directory, some collector configurations may be misplaced or have the wrong extension name, causing Datakit to skip its configuration. Correct the corresponding file location or file name. -# DataKit < 1.1.8-rc0 -log_level = "debug" +### Collector Disabled {#iss-input-disabled} + +In the main configuration of Datakit, some collectors can be disabled, and even if the collector is correctly configured in *conf.d*, Datakit will ignore this type of collector: + +```toml +default_enabled_inputs = [ + "-disk", + "-mme", +] ``` -### View gin.log {#check-gin-log} +These collectors with a `-` in front are disabled. Remove the `-` in front or remove the item. -For remote data collection to DataKit, you can check gin.log to see if there is remote data sent: +### Collector Configuration Error {#iss-invalid-conf} -```shell -tail -f /var/log/datakit/gin.log -``` +Datakit collectors use TOML format configuration files. When the configuration file does not conform to TOML specifications or does not conform to the field definition types of the program (such as configuring integers as strings, etc.), there will be a configuration file loading failure, which will lead to the collector not being enabled. -## Upload DataKit Run Log {#upload-log} +Datakit has a built-in configuration check function, see [here](datakit-tools-how-to.md#check-conf). -> Deprecated: Please use [Bug-Report](why-no-data.md#bug-report). +### Configuration Method Error {#iss-config-mistaken} -When troubleshooting DataKit problems, it is usually necessary to check the DataKit running log. To simplify the log collection process, DataKit supports one-click uploading of log files: +There are two major types of collector configurations in Datakit: + +- Host installation: Directly add the corresponding collector configuration in the *conf.d* directory +- Kubernetes installation: + - You can directly mount the collector configuration through ConfigMap + - You can also modify it through environment variables (if both ConfigMap and environment variables exist, the configuration in the environment variables will prevail) + - You can also mark the collection configuration through Annotations (relative to environment variables and ConfigMap, its priority is the highest) + - If the default collector list ( `ENV_DEFAULT_ENABLED_INPUTS` ) specifies a certain collector, and the same name and same configuration collector is added in the ConfigMap, its behavior is undefined, which may trigger the following single-instance collector issue + +### Single-instance Collector {#iss-singleton} + +A single-instance collector can only be enabled in one Datakit. If multiple collectors are enabled, Datakit loads the first one in file name order (if in the same `.conf` file, only the first one is loaded), and the others are not loaded. This may lead to the latter collectors not being enabled. + +## Global Configuration Related {#iss-global-settings} + +Some global configurations of Datakit segments also affect the collected data, in addition to the disabled collectors mentioned above, there are also the following aspects. + +### Blacklist/Pipeline Impact {#iss-pipeline-filter} + +Users may have configured a blacklist on the monitoring cloud page, which is used to discard data that meets certain characteristics and not upload it. + +Pipeline itself also has the operation of discarding data ( `drop()` ). + +Both of these discard behaviors can be seen in the output of `datakit monitor -V`. + +In addition to discarding data, Pipeline may also modify data, which may affect the front-end query, such as cutting the time field and causing a large deviation in time. + +### Disk Cache {#iss-diskcache} + +Datakit has set up a disk cache mechanism for some complex data processing, which temporarily caches them to disk for peak shaving, and they will be reported later. By viewing the [disk cache-related metrics](datakit-metrics.md#metrics), you can learn about the corresponding data cache situation. + +### Sinker Dataway {#iss-sinker-dataway} + +If [Sinker Dataway](../deployment/dataway-sink.md) is enabled, some data will be discarded due to not matching the rules according to the existing Sinker rule configuration. + +### IO Busy {#iss-io-busy} + +Due to the bandwidth limit between Datakit and Dataway, the data upload is relatively slow, which affects the data collection (not in time for consumption). In this case, Datakit will discard the metrics data that are too late to process, and non-metric data will block the collection, resulting in no data being displayed on the monitoring cloud page. + +### Dataway Cache {#iss-dataway-cache} + +If there is a network failure between Dataway and the monitoring cloud center, Dataway will cache the data pushed by Datakit, and this part of the data may be delayed or ultimately discarded (the data exceeds the disk cache limit). + +### Account Issues {#iss-workspace} + +If the user's monitoring cloud account is overdue/exceeds the data usage, it will cause Datakit data reporting to have 4xx issues. This kind of problem can be directly seen in `datakit monitor`. + +## Others {#iss-others} + +`datakit monitor -V` will output a lot of status information, and due to resolution issues, some data will not be directly displayed, and you need to scroll in the corresponding table to see it. + +However, some terminals do not support the current monitor's drag and drop operation, which is easily mistaken for no collection. You can view the monitor by specifying a specific module (each table header's red letter represents the module): ```shell -datakit debug --upload-log -log info: path/to/tkn_xxxxx/your-hostname/datakit-log-2021-11-08-1636340937.zip # Just send this path information to our engineers +# Check the status of the HTTP API +$ datakit monitor -M H + +# Check the collector configuration and collection status +$ datakit monitor -M I + +# Check basic information and runtime resource usage +$ datakit monitor -M B,R ``` -After running the command, all log files in the log directory are packaged and compressed, and then uploaded to the specified store. Our engineers will find the corresponding file according to the hostname and Token of the uploaded log, and then troubleshoot the DataKit problem. +The above is some basic troubleshooting ideas for no data issues. The following introduces some of the functions and methods used during these troubleshooting processes in Datakit itself. -## Collect DataKit Running information {#bug-report} +## Collect DataKit Runtime Information {#bug-report} -[:octicons-tag-24: Version-1.5.9](changelog.md#cl-1.5.9) · [:octicons-beaker-24: Experimental](index.md#experimental) +[:octicons-tag-24: Version-1.5.9](changelog.md#cl-1.5.9) -When troubleshooting issues with DataKit, it is necessary to manually collect various relevant information such as logs, configuration files, profile data and monitoring data. This process can be cumbersome. To simplify this process, DataKit provides a command that can retrieve all the relevant information at once and package it into a file. Usage is as follows: +After various troubleshooting, it may still be impossible to find the problem. At this time, we need to collect various information of Datakit (such as logs, configuration files, profiles, and its own metric data). To simplify this process, DataKit provides a command that can obtain all related information at one time and package it into a file. The usage method is as follows: ```shell $ datakit debug --bug-report ... ``` -After successful execution, a zip file will be generated in the current directory, named in the format `info-.zip`. +After successful execution, a zip file is generated in the current directory, with a naming format of `info-.zip`. ???+ tip - - Ensure that bug reports are collected when Datakit is running, particularly when the issue is manifesting (e.g., high memory/CPU usage), with Datakit running metrics and profiles, we can get sufficient insight for identifying the root cause effectively. + - Please make sure to collect bug report information during the Datakit operation, preferably when the problem occurs (such as high memory/CPU usage). With the help of Datakit's own metrics and profile data, we can locate some difficult problems more quickly. + + - By default, the command will collect profile data, which may have a certain performance impact on Datakit. You can disable the collection of profile by the following command ([:octicons-tag-24: Version-1.15.0](changelog.md#cl-1.15.0)): - - By default, the command will collect profile data, which may have a certain performance impact on DataKit. You can disable the collection of profile data with the following command ([:octicons-tag-24: Version-1.15.0](changelog.md#cl-1.15.0)): - ```shell $ datakit debug --bug-report --disable-profile ``` - - - If you have public internet access, you can directly upload the file to OSS to avoid the hassle of file copying ([:octicons-tag-24: Version-1.27.0](changelog.md#cl-1.27.0)): - + + - If there is public network access, you can directly upload the file to OSS to avoid the hassle of file copying ([:octicons-tag-24: Version-1.27.0](changelog.md#cl-1.27.0)): + ```shell hl_lines="7" - # Make sure to fill in the _correct_ OSS address/Bucket name and the corresponding AS/SK here + # Here *must fill in* the correct OSS address/Bucket name and corresponding AS/SK $ datakit debug --bug-report --oss OSS_HOST:OSS_BUCKET:OSS_ACCESS_KEY:OSS_SECRET_KEY ... bug report saved to info-1711794736881.zip uploading info-1711794736881.zip... download URL(size: 1.394224 M): - https://oss_bucket.oss_host/datakit-bugreport/2024-03-30/dkbr_co3v2375mqs8u82aa6sg.zip + https://OSS_BUCKET.OSS_HOST/datakit-bugreport/2024-03-30/dkbr_co3v2375mqs8u82aa6sg.zip ``` - - Simply provide us with the link address at the bottom.(Ensure that the files in OSS are publicly accessible, otherwise the link will not be able to download directly.) - - - By default, the bug report will collect 3 times of DataKit's own metrics, and you can adjust the number of times with the `--nmetrics` option ([:octicons-tag-24: Version-1.27.0](changelog.md#cl-1.27.0)): - + + Paste the link address at the bottom to us (please make sure that the file in OSS is publicly accessible, otherwise the link cannot be downloaded directly). + + - By default, the bug report will collect 3 times of Datakit's own metrics, and you can adjust the number of times here through `--nmetrics` ([:octicons-tag-24: Version-1.27.0](changelog.md#cl-1.27.0)): + ```shell $ datakit debug --bug-report --nmetrics 10 ``` +The list of files after unzipping is as follows: -The list of files is as follows: - -```shell +```not-set ├── basic │ └── info ├── config @@ -340,10 +362,10 @@ The list of files is as follows: │   ├── heap │   ├── mutex │   └── profile -├── metrics -│ ├── metric-1680513455403 +├── metrics +│ ├── metric-1680513455403 │ ├── metric-1680513460410 -│ └── metric-1680513465416 +│ └── metric-1680513465416 ├── pipeline │   ├── local_scripts │   │   ├── elasticsearch.p.copy @@ -369,35 +391,230 @@ The list of files is as follows: └── profile ``` -Document Explanation +File description -| name | dir | description | -| ---: | ---: | ---: | -| `config` | yes | Configuration file, including the main configuration and the configuration of the enabled collectors. | -| `basic` | yes | The os information and environment variables of the runtime. | -| `data` | yes | The blacklist file `.pull`, located in the `data` directory | -| `log` | yes | Latest log files, such as log and gin log, not supporting `stdout` currently | -| `profile` | yes | When pprof is enabled, it will collect profile data. [:octicons-tag-24: Version-1.9.2](changelog.md#cl-1.9.2) enabled pprof by default | -| `metrics` | yes | The data returned by the `/metrics` API is named in the format of `metric-` | -| `syslog` | yes | only supported in `linux`, based on the `journalctl` command | -| `error.log` | no | output the error messages that occur during the collection process | +| File name | Is it a directory | Description | +| ---: | ---: | ---: | +| `config` | Yes | Configuration files, including main configuration and enabled collector configurations | +| `basic` | Yes | Operating system and environment variable information of the running environment | +| `data` | Yes | Blacklist files in the `data` directory, i.e., `.pull` files | +| `log` | Yes | The latest log files, including log and gin log, temporarily not supporting `stdout` | +| `profile` | Yes | When pprof is enabled ([:octicons-tag-24: Version-1.9.2](changelog.md#cl-1.9.2) is enabled by default), profile data will be collected | +| `metrics` | Yes | Data returned by the `/metrics` interface, named in the format of `metric-` | +| `syslog` | Yes | Only supports `linux`, based on `journalctl` to obtain related logs | +| `error.log` | No | Records error information that occurs during the command output process | -### Mask sensitive information +### Sensitive Information Processing {#sensitive} -When collecting information, sensitive information (such as tokens, passwords, etc.) will be automatically filtered and replaced. The specific rules are as follows: +When collecting information, sensitive information (such as tokens, passwords, etc.) will be automatically filtered and replaced, with specific rules as follows: - Environment variables -Only retrieve environment variables starting with `ENV_`, and mask environment variables containing `password`, `token`, `key`, `key_pw`, `secret` in their names by replacing them with `******`. +Only environment variables starting with `ENV_` are obtained, and environment variables with names containing `password`, `token`, `key`, `key_pw`, `secret` are desensitized, replaced with `******` - Configuration files -Perform the following regular expression replacement on the contents of the configuration file, for example: +The content of the configuration file is processed by regular replacement, such as: -```txt -https://openway.guance.com?token=tkn_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx` => `https://openway.guance.com?token=****** -pass = "1111111"` => `pass = "******" -postgres://postgres:123456@localhost/test` => `postgres://postgres:******@localhost/test +- `https://openway.guance.com?token=tkn_xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx` is replaced with `https://openway.guance.com?token=******` +- `pass = "1111111"` is replaced with `pass = "******"` +- `postgres://postgres:123456@localhost/test` is replaced with `postgres://postgres:******@localhost/test` + +After the above processing, most sensitive information can be removed. Despite this, there may still be sensitive information in the exported files, which can be manually removed. Please make sure to confirm. + +## Debug Collector Configuration {#check-input-conf} + +[:octicons-tag-24: Version-1.9.0](changelog.md#cl-1.9.0) + +We can debug whether the collector can normally collect data through the command line, such as debugging the disk collector: + +``` shell +$ datakit debug --input-conf /usr/local/datakit/conf.d/host/disk.conf +loading /usr/local/datakit/conf.d/host/disk.conf with 1 inputs... +running input "disk"(0th)... +disk,device=/dev/disk3s1s1,fstype=apfs free=167050518528i,inodes_free=1631352720i,inodes_free_mb=1631i,inodes_total=1631702195i,inodes_total_mb=1631i,inodes_used=349475i,inodes_used_mb=0i,inodes_used_percent=0.02141781760611041,total=494384795648i,used=327334277120i,used_percent=66.21042556354438 1685509141064064000 +disk,device=/dev/disk3s6,fstype=apfs free=167050518528i,inodes_free=1631352720i,inodes_free_mb=1631i,inodes_total=1631352732i,inodes_total_mb=1631i,inodes_used=12i,inodes_used_mb=0i,inodes_used_percent=0.0000007355858585707753,total=494384795648i,used=327334277120i,used_percent=66.21042556354438 1685509141064243000 +disk,device=/dev/disk3s2,fstype=apfs free=167050518528i,inodes_free=1631352720i,inodes_free_mb=1631i,inodes_total=1631353840i,inodes_total_mb=1631i,inodes_used=1120i,inodes_used_mb=0i,inodes_used_percent=0.00006865463350366712,total=494384795648i,used=327334277120i,used_percent=66.21042556354438 1685509141064254000 +disk,device=/dev/disk3s4,fstype=apfs free=167050518528i,inodes_free=1631352720i,inodes_free_mb=1631i,inodes_total=1631352837i,inodes_total_mb=1631i,inodes_used=117i,inodes_used_mb=0i,inodes_used_percent=0.000007171961659450622,total=494384795648i,used=327334277120i,used_percent=66.21042556354438 1685509141064260000 +disk,device=/dev/disk1s2,fstype=apfs free=503996416i,inodes_free=4921840i,inodes_free_mb=4i,inodes_total=4921841i,inodes_total_mb=4i,inodes_used=1i,inodes_used_mb=0i,inodes_used_percent=0.00002031760067015574,total=524288000i,used=20291584i,used_percent=3.8703125 1685509141064266000 +disk,device=/dev/disk1s1,fstype=apfs free=503996416i,inodes_free=4921840i,inodes_free_mb=4i,inodes_total=4921873i,inodes_total_mb=4i,inodes_used=33i,inodes_used_mb=0i,inodes_used_percent=0.000670476462923769,total=524288000i,used=20291584i,used_percent=3.8703125 1685509141064271000 +disk,device=/dev/disk1s3,fstype=apfs free=503996416i,inodes_free=4921840i,inodes_free_mb=4i,inodes_total=4921892i,inodes_total_mb=4i,inodes_used=52i,inodes_used_mb=0i,inodes_used_percent=0.0010565042873756677,total=524288000i,used=20291584i,used_percent=3.8703125 1685509141064276000 +disk,device=/dev/disk3s5,fstype=apfs free=167050518528i,inodes_free=1631352720i,inodes_free_mb=1631i,inodes_total=1634318356i,inodes_total_mb=1634i,inodes_used=2965636i,inodes_used_mb=2i,inodes_used_percent=0.18146011694186712,total=494384795648i,used=327334277120i,used_percent=66.21042556354438 1685509141064280000 +disk,device=/dev/disk2s1,fstype=apfs free=3697000448i,inodes_free=36103520i,inodes_free_mb=36i,inodes_total=36103578i,inodes_total_mb=36i,inodes_used=58i,inodes_used_mb=0i,inodes_used_percent=0.00016064889745830732,total=5368664064i,used=1671663616i,used_percent=31.137422570532436 1685509141064285000 +disk,device=/dev/disk3s1,fstype=apfs free=167050518528i,inodes_free=1631352720i,inodes_free_mb=1631i,inodes_total=1631702197i,inodes_total_mb=1631i,inodes_used=349477i,inodes_used_mb=0i,inodes_used_percent=0.0214179401512444,total=494384795648i,used=327334277120i,used_percent=66.21042556354438 1685509141064289000 +# 10 points("M"), 98 time series from disk, cost 1.544792ms | Ctrl+c to exit. +``` + +The command will start the collector and print the data collected by the collector in the terminal. The bottom will display: + +- The number of points collected and their type (here "M" indicates time series data) +- The number of timelines (only for time series data) +- Collector name (here "disk") +- Collection time consumption + +You can end the debug with Ctrl + c. To get the collected data as soon as possible, you can appropriately adjust the collection interval of the collector (if any). + + +???+ tip + + - Some passively receiving data collectors (such as DDTrace/RUM) need to specify the HTTP service (`--hppt-listen=[IP:Port]`), and then use some HTTP client tools (such as `curl`) to send data to the corresponding address of Datakit. See `datakit help debug` for details + + - The collector configuration used for debugging can be of any extension, and does not necessarily [end with `.conf`](datakit-input-conf.md#intro). We can use file names such as *my-input.conf.test* specifically for debugging, while not affecting the normal operation of Datakit. + + +## View Monitor Page {#monitor} + +See [here](datakit-monitor.md) + +## Check if Data is Generated through DQL {#dql} + +This feature is supported on Windows/Linux/Mac, and it needs to be executed in Powershell on Windows. + +> This feature is supported in Datakit [1.1.7-rc7](changelog.md#cl-1.1.7-rc7) + +```shell +$ datakit dql +> Here you can enter DQL query statements... +``` + +For troubleshooting no data, it is recommended to check the corresponding metric set according to the collector documentation. Taking the MySQL collector as an example, the current documentation has the following metric sets: + +- `mysql` +- `mysql_schema` +- `mysql_innodb` +- `mysql_table_schema` +- `mysql_user_status` + +If the MySQL collector has no data, you can check if there is data in the `mysql` metric set: + +``` python +# +# Check the latest mysql metric of the specified host (here is tan-air.local) from the mysql collector +# +M::mysql {host='tan-air.local'} order by time desc limit 1 +``` + +Check if a certain host object has been reported, where `tan-air.local` is the expected host name: + +```python +O::HOST {host='tan-air.local'} +``` + +Check the existing APM (tracing) data categories: + +```python +show_tracing_service() +``` + +And so on, if the data is indeed reported, then it can be found through DQL, and as for the front end not displaying, it may be blocked by other filter conditions. Through DQL, whether it is data collected by Datakit or other means (such as Function), you can view the original data at zero distance, which is especially convenient for Debugging. + +## Check if There are Exceptions Logs {#check-log} + +Get the latest 10 ERROR, WARN level logs through Shell/Powershell + + +=== "Linux/macOS" + + ```shell + $ cat /var/log/datakit/log | grep "WARN\|ERROR" | tail -n 10 + ... + ``` + +=== "Windows" + + ```powershell + PS > Select-String -Path 'C:\Program Files\datakit\log' -Pattern "ERROR", "WARN" | Select-Object Line -Last 10 + ... + ``` + + +- If you find descriptions such as `Beyond...` in the logs, it is generally because the data volume exceeds the free quota +- If there are some `ERROR/WARN` words, it generally indicates that DataKit has encountered some problems + +### Check the Running Logs of a Single Collector {#check-input-log} + +If no exceptions are found, you can directly view the running logs of a single collector: + +```shell +# shell +tail -f /var/log/datakit/log | grep "" | grep "WARN\|ERROR" + +# powershell +Get-Content -Path "C:\Program Files\datakit\log" -Wait | Select-String "" | Select-String "ERROR", "WARN" ``` -After the above treatment, most sensitive information can be removed. Nevertheless, if there is still some sensitive information in the exported file, you can manually remove it. +You can also remove the `ERROR/WARN` filter to directly view the logs of the corresponding collector. If the logs are not enough, you can turn on the debug logs in `datakit.conf` to view more logs: + +```toml +# DataKit >= 1.1.8-rc0 +[logging] + ... + level = "debug" # Change the default of info to debug + ... + +# DataKit < 1.1.8-rc0 +log_level = "debug" +``` + +### Check gin.log {#check-gin-log} + +For collectors that remotely send data to DataKit, you can check gin.log to see if there is any remote data being sent: + +```shell +tail -f /var/log/datakit/gin.log +``` + +## Troubleshooting Guide {#how-to-trouble-shoot} + +To facilitate everyone's problem troubleshooting, the following diagram lists some basic troubleshooting ideas, and you can follow its guidance to troubleshoot potential problems: + +``` mermaid +graph TD + %% node definitions + no_data[No data]; + debug_fail{No result}; + monitor[Check monitor status]; + debug_input[Debug collector configuration]; + read_faq[Check the FAQ in the documentation]; + dql[DQL query]; + beyond_usage[Is the data exceeding the limit]; + pay[Become a paying user]; + filtered[Is the data discarded by the blacklist]; + sinked[Is the data sunk]; + check_time[Check the machine time]; + check_token[Check the workspace token]; + check_version[Check the Datakit version]; + dk_service_ok[]; + is_input_ok[Is the collector running normally]; + is_input_enabled[Is the collector enabled]; + enable_input[Enable the collector]; + dataway_upload_ok[Is the upload normal]; + ligai[Submit Ligai issue]; + + no_data --> dk_service_ok --> check_time --> check_token --> check_version --> check_changelog; + + no_data --> monitor; + no_data --> debug_input --> debug_fail; + debug_input --> read_faq; + no_data --> read_faq --> debug_fail; + dql --> debug_fail; + + monitor --> beyond_usage -->|No| debug_fail; + beyond_usage -->|Yes| pay; + + monitor --> is_input_enabled; + + is_input_enabled -->|Yes| is_input_ok; + is_input_enabled -->|No| enable_input --> debug_input; + + monitor --> is_input_ok -->|No| debug_input; + + is_input_ok -->|Yes| dataway_upload_ok -->|Yes| dql; + is_input_ok --> filtered --> sinked; + + trouble_shooting[Collect information]; + + debug_fail --> trouble_shooting; + trouble_shooting --> ligai; +``` diff --git a/internal/export/doc/zh/changelog.md b/internal/export/doc/zh/changelog.md index 2ee104d991..8423e41cd7 100644 --- a/internal/export/doc/zh/changelog.md +++ b/internal/export/doc/zh/changelog.md @@ -935,7 +935,7 @@ - 数据聚合函数 `agg_create()` 和 `agg_metric()` 支持输出任意类别的数据(#1865) - 优化 Datakit 镜像大小(#1869) - 文档 - - 增加[Datakit 指标性能测试报告](../integrations/datakit-metric-performance.md)(#1867) + - 增加 Datakit 指标性能测试报告](../integrations/datakit-metric-performance.md)(#1867) - 增加[external 采集器的使用文档](../integrations/external.md)(#1851) - 增加不同 Trace 传递说明的[文档](../integrations/tracing-propagator.md)(#1824) diff --git a/internal/export/doc/zh/inputs/apache.md b/internal/export/doc/zh/inputs/apache.md index 96eed0084b..287d01fc26 100644 --- a/internal/export/doc/zh/inputs/apache.md +++ b/internal/export/doc/zh/inputs/apache.md @@ -1,6 +1,9 @@ --- title : 'Apache' summary : 'Apache 采集器可以从 Apache 服务中采集请求数、连接数等' +tags: + - '中间件' + - 'WEB SERVER' __int_icon : 'icon/apache' dashboard : - desc : 'Apache' @@ -10,11 +13,6 @@ monitor : path : 'monitor/zh/apache' --- - -# Apache - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/awslambda.md b/internal/export/doc/zh/inputs/awslambda.md index 20235938fd..cae46bc68b 100644 --- a/internal/export/doc/zh/inputs/awslambda.md +++ b/internal/export/doc/zh/inputs/awslambda.md @@ -1,6 +1,8 @@ --- -title : 'AWS Lambda Extention' -summary : '通过 awslambda 扩展采集数据' +title : 'AWS Lambda 扩展' +summary : '通过 AWS Lambda 扩展采集数据' +tags: + - 'AWS' __int_icon : 'icon/awslambda' dashboard : - desc : '暂无' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# AWSLambda - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/beats_output.md b/internal/export/doc/zh/inputs/beats_output.md index 56700e44f5..5be229160d 100644 --- a/internal/export/doc/zh/inputs/beats_output.md +++ b/internal/export/doc/zh/inputs/beats_output.md @@ -1,6 +1,8 @@ --- title : 'Filebeat' summary : '接收 Filebeat 采集的日志数据' +tags: + - '日志' __int_icon : 'icon/beats' dashboard : - desc : '暂无' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Filebeat 日志数据接入 - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/built-in_cdn_dict_config.md b/internal/export/doc/zh/inputs/built-in_cdn_dict_config.md index 1efe81924f..ffacd2846d 100644 --- a/internal/export/doc/zh/inputs/built-in_cdn_dict_config.md +++ b/internal/export/doc/zh/inputs/built-in_cdn_dict_config.md @@ -1,7 +1,10 @@ -# 内置 CDN 列表 - +--- +skip: 'not-searchable-on-index-page' +title: '内置 CDN 列表' +--- + ```toml cdn_map=''' [ diff --git a/internal/export/doc/zh/inputs/cassandra.md b/internal/export/doc/zh/inputs/cassandra.md index ab285c0b21..89baa9b757 100644 --- a/internal/export/doc/zh/inputs/cassandra.md +++ b/internal/export/doc/zh/inputs/cassandra.md @@ -1,7 +1,9 @@ --- title : 'Cassandra' summary : '采集 Cassandra 的指标数据' -__int_icon : 'icon/cassandra' +tags : + - '数据库' +__int_icon: 'icon/cassandra' dashboard : - desc : 'Cassandra' path : 'dashboard/zh/cassandra' @@ -10,11 +12,6 @@ monitor : path : 'monitor/zh/cassandra' --- - -# Cassandra - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/cat.md b/internal/export/doc/zh/inputs/cat.md index 73321c9ac8..e396872b1d 100644 --- a/internal/export/doc/zh/inputs/cat.md +++ b/internal/export/doc/zh/inputs/cat.md @@ -1,7 +1,9 @@ --- -title : 'CAT' -summary : '美团点评的性能、容量和业务指标监控系统' -__int_icon : 'icon/cat' +title : '点评 CAT' +summary : '美团点评的性能、容量和业务指标监控系统' +__int_icon : 'icon/cat' +tags : + - '链路追踪' dashboard : - desc : 'Cat 监控视图' path : 'dashboard/zh/cat' @@ -10,16 +12,9 @@ monitor : path : '-' --- - -# 点评 CAT 数据接入 - ---- - [:octicons-tag-24: Version-1.9.0](../datakit/changelog.md#cl-1.9.0) · [:octicons-beaker-24: Experimental](../datakit/index.md#experimental) ---- - {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/certificate.md b/internal/export/doc/zh/inputs/certificate.md index e9b8c9ac2b..0b74a2cab4 100644 --- a/internal/export/doc/zh/inputs/certificate.md +++ b/internal/export/doc/zh/inputs/certificate.md @@ -1,7 +1,6 @@ - -# OpenSSL 生成自签证书 {#self-signed-certificate-with-OpenSSL} - - +--- +skip: 'not-searchable-on-index-page' +title: 'OpenSSL 生成自签证书' --- 本文介绍如何通过 OpenSSL cli 生成自签证书用于开启安全连接层(ssl) diff --git a/internal/export/doc/zh/inputs/chrony.md b/internal/export/doc/zh/inputs/chrony.md index 0f7d532f24..61bbae76ce 100644 --- a/internal/export/doc/zh/inputs/chrony.md +++ b/internal/export/doc/zh/inputs/chrony.md @@ -10,10 +10,6 @@ monitor : path : '-' --- - -# Chrony - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/clickhousev1.md b/internal/export/doc/zh/inputs/clickhousev1.md index 3326fca600..9c967bb0de 100644 --- a/internal/export/doc/zh/inputs/clickhousev1.md +++ b/internal/export/doc/zh/inputs/clickhousev1.md @@ -1,18 +1,15 @@ --- -title : 'ClickHouse' -summary : '采集 ClickHouse 的指标数据' -__int_icon : 'icon/clickhouse' -dashboard : - - desc : 'ClickHouse' - path : 'dashboard/zh/clickhouse' -monitor : - - desc : '暂无' - path : '-' ---- - - -# ClickHouse - +title : 'ClickHouse' +summary : '采集 ClickHouse 的指标数据' +__int_icon : 'icon/clickhouse' +tags: + - '数据库' +dashboard : + - desc : 'ClickHouse' + path : 'dashboard/zh/clickhouse' +monitor : + - desc : '暂无' + path : '-' --- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/cloudprober.md b/internal/export/doc/zh/inputs/cloudprober.md index 1898bba718..17adf06c08 100644 --- a/internal/export/doc/zh/inputs/cloudprober.md +++ b/internal/export/doc/zh/inputs/cloudprober.md @@ -10,10 +10,6 @@ monitor : path : '-' --- - -# Cloudprober 接入 - ---- :fontawesome-brands-linux: :fontawesome-brands-windows: :fontawesome-brands-apple: diff --git a/internal/export/doc/zh/inputs/cockroachdb.md b/internal/export/doc/zh/inputs/cockroachdb.md index 677c7335cf..5bca1c4ac9 100644 --- a/internal/export/doc/zh/inputs/cockroachdb.md +++ b/internal/export/doc/zh/inputs/cockroachdb.md @@ -2,6 +2,8 @@ title : 'CockroachDB' summary : '采集 CockroachDB 的指标数据' __int_icon : 'icon/cockroachdb' +tags: + - '数据库' dashboard : - desc : 'CockroachDB' path : 'dashboard/zh/cockroachdb' @@ -10,10 +12,6 @@ monitor : path : 'monitor/zh/cockroachdb' --- - -# CockroachDB - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/consul.md b/internal/export/doc/zh/inputs/consul.md index 2684590da5..98c6f98226 100644 --- a/internal/export/doc/zh/inputs/consul.md +++ b/internal/export/doc/zh/inputs/consul.md @@ -2,6 +2,8 @@ title : 'Consul' summary : '采集 Consul 的指标数据' __int_icon : 'icon/consul' +tags: + - '中间件' dashboard : - desc : 'Consul' path : 'dashboard/zh/consul' @@ -10,10 +12,6 @@ monitor : path : 'monitor/zh/consul' --- - -# Consul - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/container-log.md b/internal/export/doc/zh/inputs/container-log.md index 8db7b47fe4..94183015d9 100644 --- a/internal/export/doc/zh/inputs/container-log.md +++ b/internal/export/doc/zh/inputs/container-log.md @@ -1,5 +1,11 @@ -# 容器日志 - +--- +title: '容器日志' +summary: '采集 Container 和 Kubernetes 日志数据' +tags: + - '日志' + - '容器' + - 'KUBERNETES' +__int_icon: 'icon/kubernetes/' --- Datakit 支持采集 Kubernetes 和主机容器日志,从数据来源上,可以分为以下两种: @@ -149,7 +155,7 @@ Datakit 支持采集 Kubernetes 和主机容器日志,从数据来源上,可 ```shell kubectl annotate pods my-pod datakit/logs="[{\"disable\":false,\"source\":\"log-source\",\"service\":\"log-service\",\"pipeline\":\"test.p\",\"multiline_match\":\"^\\\\d{4}-\\\\d{2}\"}]" - ``` + ``` 如果一个 Pod/容器日志已经在采集中,此时再通过 `kubectl annotate` 命令添加配置不生效。 @@ -274,7 +280,7 @@ Datakit 支持采集 Kubernetes 和主机容器日志,从数据来源上,可 ## 忽略所有 kodo 容器 container_exclude_log = ["image:kodo"] ``` - + `container_include` 和 `container_exclude` 必须以属性字段开头,格式为一种[类正则的 Glob 通配](https://en.wikipedia.org/wiki/Glob_(programming)){:target="_blank"}:`"<字段名>:"` 现支持以下 4 个字段规则,这 4 个字段都是基础设施的属性字段: @@ -305,7 +311,7 @@ Datakit 支持采集 Kubernetes 和主机容器日志,从数据来源上,可 === "Kubernetes" - 可通过如下环境变量 + 可通过如下环境变量 - ENV_INPUT_CONTAINER_CONTAINER_INCLUDE_LOG - ENV_INPUT_CONTAINER_CONTAINER_EXCLUDE_LOG @@ -341,7 +347,7 @@ Datakit 支持采集 Kubernetes 和主机容器日志,从数据来源上,可 ``` Kubernetes Pod: - + ``` shell echo `kubectl get pod -o=jsonpath="{.items[0].spec.containers[0].image}"` ``` diff --git a/internal/export/doc/zh/inputs/container.md b/internal/export/doc/zh/inputs/container.md index 1c398dae84..d8da233de7 100644 --- a/internal/export/doc/zh/inputs/container.md +++ b/internal/export/doc/zh/inputs/container.md @@ -2,6 +2,9 @@ title: '容器基础采集' summary: '采集 Container 和 Kubernetes 的指标、对象和日志数据,上报到观测云。' __int_icon: 'icon/kubernetes/' +tags: + - 'KUBERNETES' + - '容器' dashboard: - desc: 'Kubernetes 监控视图' path: 'dashboard/zh/kubernetes' @@ -20,10 +23,6 @@ monitor: --- - -# 容器基础采集 - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/coredns.md b/internal/export/doc/zh/inputs/coredns.md index 3c12036bb1..86d89b934d 100644 --- a/internal/export/doc/zh/inputs/coredns.md +++ b/internal/export/doc/zh/inputs/coredns.md @@ -1,6 +1,8 @@ --- title : 'CoreDNS' summary : '采集 CoreDNS 的指标数据' +tags: + - '中间件' __int_icon : 'icon/coredns' dashboard : - desc : 'CoreDNS' @@ -10,10 +12,6 @@ monitor : path : '-' --- - -# CoreDNS - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/couchbase.md b/internal/export/doc/zh/inputs/couchbase.md index e01af2e945..fdb226d0ae 100644 --- a/internal/export/doc/zh/inputs/couchbase.md +++ b/internal/export/doc/zh/inputs/couchbase.md @@ -1,6 +1,8 @@ --- title : 'Couchbase' summary : '采集 Couchbase 服务器相关的指标数据' +tags: + - '数据库' __int_icon : 'icon/couchbase' dashboard : - desc : 'Couchbase 内置视图' @@ -10,10 +12,6 @@ monitor : path : '-' --- - -# Couchbase - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/couchdb.md b/internal/export/doc/zh/inputs/couchdb.md index 573520c652..a57cfcda3c 100644 --- a/internal/export/doc/zh/inputs/couchdb.md +++ b/internal/export/doc/zh/inputs/couchdb.md @@ -1,6 +1,8 @@ --- title : 'CouchDB' summary : '采集 CouchDB 的指标数据' +tags: + - '数据库' __int_icon : 'icon/couchdb' dashboard : - desc : 'CouchDB' @@ -10,10 +12,6 @@ monitor : path : 'monitor/zh/couchdb' --- - -# CouchDB - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/cpu.md b/internal/export/doc/zh/inputs/cpu.md index c03e4e0d5b..bbc5a955d6 100644 --- a/internal/export/doc/zh/inputs/cpu.md +++ b/internal/export/doc/zh/inputs/cpu.md @@ -1,6 +1,8 @@ --- title : 'CPU' summary : '采集 CPU 指标数据' +tags: + - 'HOST' __int_icon : 'icon/cpu' dashboard : - desc : 'CPU' @@ -10,11 +12,6 @@ monitor : path : 'monitor/zh/host' --- - -# CPU - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/datakit-logging-how.md b/internal/export/doc/zh/inputs/datakit-logging-how.md index 8236217239..4607afb243 100644 --- a/internal/export/doc/zh/inputs/datakit-logging-how.md +++ b/internal/export/doc/zh/inputs/datakit-logging-how.md @@ -1,4 +1,6 @@ -# DataKit 日志处理综述 +--- +skip: 'not-searchable-on-index-page' +title: 'DataKit 日志处理综述' --- 本篇用来介绍 DataKit 如何处理日志的。在[另一篇文档](datakit-logging.md)中,我们介绍了 DataKit 是如何采集日志的,这两篇文档,可结合起来看,希望大家对整个日志处理有更全面的认识。 diff --git a/internal/export/doc/zh/inputs/datakit-logging.md b/internal/export/doc/zh/inputs/datakit-logging.md index 278ef0d2fd..65d1d60876 100644 --- a/internal/export/doc/zh/inputs/datakit-logging.md +++ b/internal/export/doc/zh/inputs/datakit-logging.md @@ -1,4 +1,6 @@ -# DataKit 日志采集综述 +--- +skip: 'not-searchable-on-index-page' +title: 'DataKit 日志采集综述' --- 日志数据对于整体的可观测性,其提供了足够灵活、多变的的信息组合方式,正因如此,相比指标和 Tracing,日志的采集、处理方式方案更多,以适应不同环境、架构以及技术栈的采集场景。 diff --git a/internal/export/doc/zh/inputs/datakit-metric-performance.md b/internal/export/doc/zh/inputs/datakit-metric-performance.md index 9c6e8bfc4f..477f63bcb8 100644 --- a/internal/export/doc/zh/inputs/datakit-metric-performance.md +++ b/internal/export/doc/zh/inputs/datakit-metric-performance.md @@ -1,4 +1,6 @@ -# Datakit 指标性能测试报告 +--- +skip: 'not-searchable-on-index-page' +title: 'Datakit 指标性能测试报告' --- ## 测试环境参数 diff --git a/internal/export/doc/zh/inputs/datakit-profiling-struct.md b/internal/export/doc/zh/inputs/datakit-profiling-struct.md index 153ad8c430..a5c68a3c52 100644 --- a/internal/export/doc/zh/inputs/datakit-profiling-struct.md +++ b/internal/export/doc/zh/inputs/datakit-profiling-struct.md @@ -1,4 +1,6 @@ -# Datakit Profiling 相关数据结构 +--- +skip: 'not-searchable-on-index-page' +title: 'Datakit Profiling 相关数据结构' --- 本文介绍 Datakit 中 profiling 相关数据结构定义。 diff --git a/internal/export/doc/zh/inputs/datakit-trace-performance.md b/internal/export/doc/zh/inputs/datakit-trace-performance.md index 1926b47268..686e40ccfe 100644 --- a/internal/export/doc/zh/inputs/datakit-trace-performance.md +++ b/internal/export/doc/zh/inputs/datakit-trace-performance.md @@ -1,4 +1,7 @@ -# Datakit Trace Agent 性能报告 +--- +skip: 'not-searchable-on-index-page' +title: 'Datakit Trace Agent 性能报告' +--- 以下测试在真实物理环境下进行,并使用测试工具发送饱和数据。 diff --git a/internal/export/doc/zh/inputs/datakit-tracing-introduction.md b/internal/export/doc/zh/inputs/datakit-tracing-introduction.md index e3f7eca801..0781863db7 100644 --- a/internal/export/doc/zh/inputs/datakit-tracing-introduction.md +++ b/internal/export/doc/zh/inputs/datakit-tracing-introduction.md @@ -1,4 +1,7 @@ -# 链路追踪简述 +--- +skip: 'not-searchable-on-index-page' +title: '链路追踪简述' +--- 程序日志是代码执行过程的面包屑,寻找这些面包屑不但可以找到隐藏在代码中的 Bug:fontawesome-solid-bug: 更重要的是连续的程序日志循迹提供了一种构建程序执行过程可观测的途径。 diff --git a/internal/export/doc/zh/inputs/datakit-tracing-struct.md b/internal/export/doc/zh/inputs/datakit-tracing-struct.md index 51db924455..2fe87618ce 100644 --- a/internal/export/doc/zh/inputs/datakit-tracing-struct.md +++ b/internal/export/doc/zh/inputs/datakit-tracing-struct.md @@ -1,5 +1,7 @@ - -# Datakit Tracing 数据结构 +--- +skip: 'not-searchable-on-index-page' +title: 'Datakit Tracing 数据结构' +--- ## 简述 {#intro} diff --git a/internal/export/doc/zh/inputs/datakit-tracing.md b/internal/export/doc/zh/inputs/datakit-tracing.md index e6fb320533..96715e9554 100644 --- a/internal/export/doc/zh/inputs/datakit-tracing.md +++ b/internal/export/doc/zh/inputs/datakit-tracing.md @@ -1,5 +1,7 @@ - -# Datakit Tracing 综述 +--- +skip: 'not-searchable-on-index-page' +title: 'Datakit Tracing 综述' +--- 目前 Datakit 支持的第三方 Tracing 数据包括: diff --git a/internal/export/doc/zh/inputs/db2.md b/internal/export/doc/zh/inputs/db2.md index 68dc736eff..3df537d799 100644 --- a/internal/export/doc/zh/inputs/db2.md +++ b/internal/export/doc/zh/inputs/db2.md @@ -1,6 +1,8 @@ --- -title : 'IBM Db2' -summary : '采集 IBM Db2 的指标数据' +title : 'DB2' +summary : '采集 IBM DB2 的指标数据' +tags: + - '数据库' __int_icon : 'icon/db2' dashboard : - desc : 'IBM Db2' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# IBM Db2 - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/ddtrace-128-trace-id.md b/internal/export/doc/zh/inputs/ddtrace-128-trace-id.md index 78aba7c8cb..4bb5e77c05 100644 --- a/internal/export/doc/zh/inputs/ddtrace-128-trace-id.md +++ b/internal/export/doc/zh/inputs/ddtrace-128-trace-id.md @@ -1,4 +1,7 @@ -# 支持 128 位的链路 ID +--- +skip: 'not-searchable-on-index-page' +title: '128-bit Trace ID' +--- [:octicons-tag-24: Datakit-1.8.0](../datakit/changelog.md#cl-1.8.0) [:octicons-tag-24: DDTrace-1.4.0-guance](ddtrace-ext-changelog.md#cl-1.14.0-guance) diff --git a/internal/export/doc/zh/inputs/ddtrace-attach.md b/internal/export/doc/zh/inputs/ddtrace-attach.md index 1f9e27cf08..da96c0ebe2 100644 --- a/internal/export/doc/zh/inputs/ddtrace-attach.md +++ b/internal/export/doc/zh/inputs/ddtrace-attach.md @@ -1,9 +1,11 @@ - -# 自动注入 DDTrace-Java Agent - ------ - -本 Java 工具主要用于将 DDTrace-Java agent 注入到当前已经运行的 Java 进程中,无需手动配置和重启宿主 Java 进程。 +--- +title : '自动注入 DDTrace-Java Agent' +summary : 'DDTrace Java 集成' +tags : + - '链路追踪' + - 'JAVA' +__int_icon: 'icon/ddtrace' +---
@@ -14,7 +16,11 @@ [:octicons-history-16:](https://github.com/GuanceCloud/agent-attach-java/releases){:target="_blank"}
- + + +--- + +本 Java 工具主要用于将 DDTrace-Java agent 注入到当前已经运行的 Java 进程中,无需手动配置和重启宿主 Java 进程。 ## 原理 {#principle} diff --git a/internal/export/doc/zh/inputs/ddtrace-cpp.md b/internal/export/doc/zh/inputs/ddtrace-cpp.md index 342b0dca34..d085df939d 100644 --- a/internal/export/doc/zh/inputs/ddtrace-cpp.md +++ b/internal/export/doc/zh/inputs/ddtrace-cpp.md @@ -1,6 +1,10 @@ - -# C++ - +--- +title : 'DDTrace C++' +summary : 'DDTrace C++ 集成' +tags : + - '链路追踪' + - 'C/C++' +__int_icon: 'icon/ddtrace' --- 在 C++ 代码中应用 DDTrace,需要修改业务代码,并且对于常见的中间件和库也没有对应的 SDK 集成,**需手动在现有业务代码中进行埋点**。 diff --git a/internal/export/doc/zh/inputs/ddtrace-ext-changelog.md b/internal/export/doc/zh/inputs/ddtrace-ext-changelog.md index 2b6a972c85..ead4f47361 100644 --- a/internal/export/doc/zh/inputs/ddtrace-ext-changelog.md +++ b/internal/export/doc/zh/inputs/ddtrace-ext-changelog.md @@ -1,5 +1,6 @@ -# 更新历史 - +--- +title: 'DDTrace Java 扩展更新日志' +skip: 'not-searchable-on-index-page' --- > *作者: 刘锐、宋龙奇* diff --git a/internal/export/doc/zh/inputs/ddtrace-ext-java.md b/internal/export/doc/zh/inputs/ddtrace-ext-java.md index 48f2e58a83..ea20106a53 100644 --- a/internal/export/doc/zh/inputs/ddtrace-ext-java.md +++ b/internal/export/doc/zh/inputs/ddtrace-ext-java.md @@ -1,6 +1,10 @@ - -# 观测云二次开发 - +--- +title : 'DDTrace 扩展' +summary : '观测云扩展了 DDTrace 对组建的支持' +__int_icon: 'icon/ddtrace' +tags : + - 'DDTRACE' + - '链路追踪' --- ## 简介 {#intro} diff --git a/internal/export/doc/zh/inputs/ddtrace-golang.md b/internal/export/doc/zh/inputs/ddtrace-golang.md index b277ab9a9c..54a220326d 100644 --- a/internal/export/doc/zh/inputs/ddtrace-golang.md +++ b/internal/export/doc/zh/inputs/ddtrace-golang.md @@ -1,7 +1,13 @@ - -# Golang - --- +title : 'DDTrace Golang' +summary : 'DDTrace Golang 集成' +tags : + - 'DDTRACE' + - 'GOLANG' + - '链路追踪' +__int_icon: 'icon/ddtrace' +--- + Golang 的 APM 接入有一定的侵入性,**需要修改已有代码**,但总体而言,常见的业务代码不需要做太多变更,只需要替换相关的 import 包即可。 diff --git a/internal/export/doc/zh/inputs/ddtrace-java.md b/internal/export/doc/zh/inputs/ddtrace-java.md index 090b3c3c68..83cd78eaf0 100644 --- a/internal/export/doc/zh/inputs/ddtrace-java.md +++ b/internal/export/doc/zh/inputs/ddtrace-java.md @@ -1,7 +1,13 @@ - -# Java - --- +title : 'DDTrace Java' +summary : 'DDTrace Java 集成' +tags : + - 'DDTRACE' + - 'JAVA' + - '链路追踪' +__int_icon: 'icon/ddtrace' +--- + Java 的 APM 接入很方便,无需修改业务代码,只需要注入对应的 agent 即可。 diff --git a/internal/export/doc/zh/inputs/ddtrace-jmxfetch.md b/internal/export/doc/zh/inputs/ddtrace-jmxfetch.md index d9758a0fda..6f95e3e788 100644 --- a/internal/export/doc/zh/inputs/ddtrace-jmxfetch.md +++ b/internal/export/doc/zh/inputs/ddtrace-jmxfetch.md @@ -1,6 +1,11 @@ - -# 指标暴露和自定义指标 - +--- +title : 'DDTrace JMX' +summary : 'DDTrace JMX 集成' +tags : + - 'DDTRACE' + - 'JAVA' + - '链路追踪' +__int_icon: 'icon/ddtrace' --- ## JMXFetch {#ddtrace-jmxfetch} diff --git a/internal/export/doc/zh/inputs/ddtrace-nodejs.md b/internal/export/doc/zh/inputs/ddtrace-nodejs.md index b3700f0965..555b77efb9 100644 --- a/internal/export/doc/zh/inputs/ddtrace-nodejs.md +++ b/internal/export/doc/zh/inputs/ddtrace-nodejs.md @@ -1,7 +1,13 @@ - -# NodeJS - --- +title : 'DDTrace NodeJS' +summary : 'DDTrace NodeJS 集成' +tags : + - 'DDTRACE' + - 'NODEJS' + - '链路追踪' +__int_icon: 'icon/ddtrace' +--- + ## 安装依赖 {#dependence} diff --git a/internal/export/doc/zh/inputs/ddtrace-php.md b/internal/export/doc/zh/inputs/ddtrace-php.md index 9ae598414b..13ddf73e15 100644 --- a/internal/export/doc/zh/inputs/ddtrace-php.md +++ b/internal/export/doc/zh/inputs/ddtrace-php.md @@ -1,7 +1,13 @@ - -# PHP - --- +title : 'DDTrace PHP' +summary : 'DDTrace PHP 集成' +tags : + - 'DDTRACE' + - 'PHP' + - '链路追踪' +__int_icon: 'icon/ddtrace' +--- + ## 安装依赖 {#dependence} diff --git a/internal/export/doc/zh/inputs/ddtrace-python.md b/internal/export/doc/zh/inputs/ddtrace-python.md index 1ce1169178..5177ffbd24 100644 --- a/internal/export/doc/zh/inputs/ddtrace-python.md +++ b/internal/export/doc/zh/inputs/ddtrace-python.md @@ -1,5 +1,11 @@ - -# Python +--- +title : 'DDTrace Phthon' +summary : 'DDTrace Python 集成' +tags : + - 'DDTRACE' + - 'PYTHON' + - '链路追踪' +__int_icon: 'icon/ddtrace' --- ## 安装依赖 {#dependence} diff --git a/internal/export/doc/zh/inputs/ddtrace-ruby.md b/internal/export/doc/zh/inputs/ddtrace-ruby.md index 85789fe485..00453017d1 100644 --- a/internal/export/doc/zh/inputs/ddtrace-ruby.md +++ b/internal/export/doc/zh/inputs/ddtrace-ruby.md @@ -1,6 +1,12 @@ - -# Ruby - --- +title : 'DDTrace Ruby' +summary : 'DDTrace Ruby 集成' +tags : + - 'DDTRACE' + - 'RUBY' + - '链路追踪' +__int_icon: 'icon/ddtrace' +--- + Ruby APM 接入,请参考 [Datadog Ruby 接入文档](https://docs.datadoghq.com/tracing/trace_collection/automatic_instrumentation/dd_libraries/ruby/#advanced-configuration){:target="_blank"}。 diff --git a/internal/export/doc/zh/inputs/ddtrace.md b/internal/export/doc/zh/inputs/ddtrace.md index 64ca0accd8..e790d52be8 100644 --- a/internal/export/doc/zh/inputs/ddtrace.md +++ b/internal/export/doc/zh/inputs/ddtrace.md @@ -2,6 +2,9 @@ title : 'DDTrace' summary : '接收 DDTrace 的 APM 数据' __int_icon: 'icon/ddtrace' +tags : + - 'DDTRACE' + - '链路追踪' dashboard : - desc : '暂无' path : '-' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# DDTrace - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/demo.md b/internal/export/doc/zh/inputs/demo.md index 37466ec09b..cece7715c5 100644 --- a/internal/export/doc/zh/inputs/demo.md +++ b/internal/export/doc/zh/inputs/demo.md @@ -11,10 +11,6 @@ monitor: path: '-' --- - -# Demo 采集器 - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/dialtesting.md b/internal/export/doc/zh/inputs/dialtesting.md index f5c99858ac..76efc322c1 100644 --- a/internal/export/doc/zh/inputs/dialtesting.md +++ b/internal/export/doc/zh/inputs/dialtesting.md @@ -1,6 +1,9 @@ --- title : '网络拨测' summary : '通过网络拨测来获取网络性能表现' +tags: + - '拨测' + - '网络' __int_icon : 'icon/dialtesting' dashboard : - desc : '暂无' @@ -10,10 +13,6 @@ monitor : path : '-' --- - -# 网络拨测 - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/dialtesting_json.md b/internal/export/doc/zh/inputs/dialtesting_json.md index 224ac4f7f9..578b143683 100644 --- a/internal/export/doc/zh/inputs/dialtesting_json.md +++ b/internal/export/doc/zh/inputs/dialtesting_json.md @@ -1,6 +1,9 @@ --- title : '自定义拨测任务' summary : '自定义拨测采集器来定制拨测任务' +tags: + - '拨测' + - '网络' __int_icon : 'icon/dialtesting' dashboard : - desc : '暂无' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# 自定义拨测任务 - - ---- 某些情况下,可能不能连接 SAAS 的拨测任务服务,此时,我们可以通过本地的 JSON 文件来定义拨测任务。 diff --git a/internal/export/doc/zh/inputs/disk.md b/internal/export/doc/zh/inputs/disk.md index 6178180f8f..5b8c4f38d9 100644 --- a/internal/export/doc/zh/inputs/disk.md +++ b/internal/export/doc/zh/inputs/disk.md @@ -1,6 +1,8 @@ --- title : '磁盘' summary : '采集磁盘的指标数据' +tags: + - '主机' __int_icon : 'icon/disk' dashboard : - desc : '磁盘' @@ -10,12 +12,6 @@ monitor : path : 'monitor/zh/host' --- - -# Disk - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/diskio.md b/internal/export/doc/zh/inputs/diskio.md index f8319f6f62..199f90b42c 100644 --- a/internal/export/doc/zh/inputs/diskio.md +++ b/internal/export/doc/zh/inputs/diskio.md @@ -1,6 +1,8 @@ --- title : '磁盘 IO' summary : '采集磁盘 IO 指标数据' +tags: + - '主机' __int_icon : 'icon/diskio' dashboard : - desc : '磁盘 IO' @@ -10,11 +12,6 @@ monitor : path : 'monitor/zh/host' --- - -# DiskIO - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/dk.md b/internal/export/doc/zh/inputs/dk.md index 382e820be8..e6626fe3b3 100644 --- a/internal/export/doc/zh/inputs/dk.md +++ b/internal/export/doc/zh/inputs/dk.md @@ -1,6 +1,8 @@ --- title: 'DataKit 自身指标采集' summary: '采集 Datakit 自身运行指标' +tags: + - '主机' __int_icon: 'icon/dk' dashboard: - desc: 'Datakit 内置视图' @@ -13,11 +15,6 @@ monitor: path: '-' --- - -# DataKit 自身指标 - - ---- {{.AvailableArchs}} · [:octicons-tag-24: Version-1.11.0](../datakit/changelog.md#cl-1.11.0) diff --git a/internal/export/doc/zh/inputs/doc-logging.md b/internal/export/doc/zh/inputs/doc-logging.md index 509138adfa..c57790fe71 100644 --- a/internal/export/doc/zh/inputs/doc-logging.md +++ b/internal/export/doc/zh/inputs/doc-logging.md @@ -1,4 +1,7 @@ -# Datakit 日志采集系统的设计和实现 +--- +title: 'Datakit 日志采集系统的设计和实现' +skip: 'not-searchable-on-index-page' +--- ## 前言 {#head} diff --git a/internal/export/doc/zh/inputs/doris.md b/internal/export/doc/zh/inputs/doris.md index 4ce57247b4..3f2368d5ff 100644 --- a/internal/export/doc/zh/inputs/doris.md +++ b/internal/export/doc/zh/inputs/doris.md @@ -1,6 +1,8 @@ --- title : 'Doris' summary : '采集 Doris 的指标数据' +tags: + - '数据库' __int_icon : 'icon/doris' dashboard : - desc : 'Doris' @@ -10,11 +12,6 @@ monitor : path : 'monitor/zh/doris' --- - -# Doris - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/ebpf.md b/internal/export/doc/zh/inputs/ebpf.md index 66c4c8c46d..7a0322a0ae 100644 --- a/internal/export/doc/zh/inputs/ebpf.md +++ b/internal/export/doc/zh/inputs/ebpf.md @@ -1,6 +1,9 @@ --- title : 'eBPF' summary : '通过 eBPF 采集 Linux 网络数据' +tags: + - 'EBPF' + - 'NETWORK' __int_icon : 'icon/ebpf' dashboard : - desc : '暂无' @@ -10,12 +13,6 @@ monitor : path : '-' --- - -# eBPF - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/ebpftrace.md b/internal/export/doc/zh/inputs/ebpftrace.md index 20f7261d5b..e20389c99a 100644 --- a/internal/export/doc/zh/inputs/ebpftrace.md +++ b/internal/export/doc/zh/inputs/ebpftrace.md @@ -1,6 +1,9 @@ --- -title : 'ebpftrace' +title : 'eBPF Tracing' summary : '关联 eBPF 采集的链路 span,生成链路' +tags: + - '链路追踪' + - 'EBPF' __int_icon : 'icon/ebpf' dashboard : - desc : '暂无' @@ -10,12 +13,6 @@ monitor : path : '-' --- - -# ebpftrace - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/elasticsearch.md b/internal/export/doc/zh/inputs/elasticsearch.md index 3d7cfed6ac..0a85f24357 100644 --- a/internal/export/doc/zh/inputs/elasticsearch.md +++ b/internal/export/doc/zh/inputs/elasticsearch.md @@ -1,6 +1,8 @@ --- title : 'ElasticSearch' summary : '采集 ElasticSearch 的指标数据' +tags: + - '数据库' __int_icon : 'icon/elasticsearch' dashboard : - desc : 'ElasticSearch' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# ElasticSearch - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/etcd.md b/internal/export/doc/zh/inputs/etcd.md index 1a5e5e2b9f..c28ec9a267 100644 --- a/internal/export/doc/zh/inputs/etcd.md +++ b/internal/export/doc/zh/inputs/etcd.md @@ -1,6 +1,8 @@ --- title : 'etcd' summary : '采集 etcd 的指标数据' +tags: + - '中间件' __int_icon : 'icon/etcd' dashboard : - desc : 'etcd' @@ -12,11 +14,6 @@ monitor : path : '-' --- - -# etcd - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/external.md b/internal/export/doc/zh/inputs/external.md index 96d95866c0..48be1c303a 100644 --- a/internal/export/doc/zh/inputs/external.md +++ b/internal/export/doc/zh/inputs/external.md @@ -10,11 +10,6 @@ monitor : path : '-' --- - -# External - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/flinkv1.md b/internal/export/doc/zh/inputs/flinkv1.md index 868b322c41..58057b39ae 100644 --- a/internal/export/doc/zh/inputs/flinkv1.md +++ b/internal/export/doc/zh/inputs/flinkv1.md @@ -1,6 +1,8 @@ --- title : 'Flink' summary : '采集 Flink 的指标数据' +tags: + - '中间件' __int_icon : 'icon/flink' dashboard : - desc : 'Flink' @@ -10,11 +12,6 @@ monitor : path : 'monitor/zh/flink' --- - -# Flink - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/gitlab.md b/internal/export/doc/zh/inputs/gitlab.md index 5c646cf070..1fe373c6dd 100644 --- a/internal/export/doc/zh/inputs/gitlab.md +++ b/internal/export/doc/zh/inputs/gitlab.md @@ -1,6 +1,9 @@ --- title : 'GitLab' -summary : '采集 Gitlab 的指标数据' +summary : '采集 GitLab 的指标数据' +tags: + - 'GITLAB' + - 'CI/CD' __int_icon : 'icon/gitlab' dashboard : - desc : 'GitLab' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# GitLab - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/gpu_smi.md b/internal/export/doc/zh/inputs/gpu_smi.md index b7378ea07d..dc1f4f4c3c 100644 --- a/internal/export/doc/zh/inputs/gpu_smi.md +++ b/internal/export/doc/zh/inputs/gpu_smi.md @@ -1,6 +1,8 @@ --- title : 'GPU' summary : '采集 NVIDIA GPU 指标数据' +tags: + - '主机' __int_icon : 'icon/gpu_smi' dashboard : - desc : '暂无' @@ -10,10 +12,6 @@ monitor : path : '-' --- - -# GPU - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/graphite.md b/internal/export/doc/zh/inputs/graphite.md index f72b20370b..28a2d1461f 100644 --- a/internal/export/doc/zh/inputs/graphite.md +++ b/internal/export/doc/zh/inputs/graphite.md @@ -1,6 +1,8 @@ --- -title : 'Graphite Exporter' +title : 'Graphite' summary : '采集 Graphite Exporter 暴露的指标数据' +tags: + - '外部数据接入' __int_icon : 'icon/graphite' dashboard : - desc : '暂无' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# Graphite - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/host_healthcheck.md b/internal/export/doc/zh/inputs/host_healthcheck.md index 35df53fca3..655ab5f859 100644 --- a/internal/export/doc/zh/inputs/host_healthcheck.md +++ b/internal/export/doc/zh/inputs/host_healthcheck.md @@ -1,6 +1,8 @@ --- -title : '健康检查' +title : '主机健康检查' summary : '定期检查主机进程和网络健康状况' +tags: + - '主机' __int_icon : 'icon/healthcheck' dashboard : - desc : '暂无' @@ -10,10 +12,6 @@ monitor : path : '-' --- - -# 健康检查 - - [:octicons-tag-24: Version-1.24.0](../datakit/changelog.md#cl-1.24.0) --- @@ -78,4 +76,4 @@ monitor : {{$m.FieldsMarkdownTable}} {{end}} -{{ end }} \ No newline at end of file +{{ end }} diff --git a/internal/export/doc/zh/inputs/host_processes.md b/internal/export/doc/zh/inputs/host_processes.md index 8c2f8ebc56..44b3a4a18f 100644 --- a/internal/export/doc/zh/inputs/host_processes.md +++ b/internal/export/doc/zh/inputs/host_processes.md @@ -1,6 +1,8 @@ --- title : '进程' summary : '采集进程的指标和对象数据' +tags: + - '主机' __int_icon : 'icon/process' dashboard : - desc : '进程' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# 进程 - - ---- {{.AvailableArchs}} @@ -28,7 +25,7 @@ monitor : 进程采集器(不管是对象还是指标),在 macOS 上可能消耗比较大,导致 CPU 飙升,可以手动将其关闭。目前默认采集器仍然开启进程对象采集器(默认 5min 运行一次)。 - + ## 配置 {#config} diff --git a/internal/export/doc/zh/inputs/hostdir.md b/internal/export/doc/zh/inputs/hostdir.md index c0b1366187..88bbe9896b 100644 --- a/internal/export/doc/zh/inputs/hostdir.md +++ b/internal/export/doc/zh/inputs/hostdir.md @@ -1,6 +1,8 @@ --- title : '文件目录' summary : '采集文件目录的指标数据' +tags: + - '主机' __int_icon : 'icon/hostdir' dashboard : - desc : '文件目录' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# 主机目录 - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/hostobject.md b/internal/export/doc/zh/inputs/hostobject.md index 466c28b5a9..ba69b84be0 100644 --- a/internal/export/doc/zh/inputs/hostobject.md +++ b/internal/export/doc/zh/inputs/hostobject.md @@ -1,6 +1,8 @@ --- title : '主机对象' summary : '采集主机基本信息' +tags: + - '主机' __int_icon : 'icon/hostobject' dashboard : - desc : '暂无' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# 主机对象 - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/iis.md b/internal/export/doc/zh/inputs/iis.md index 09a0c56c84..d621b23e8e 100644 --- a/internal/export/doc/zh/inputs/iis.md +++ b/internal/export/doc/zh/inputs/iis.md @@ -1,6 +1,10 @@ --- title : 'IIS' summary : '采集 IIS 指标数据' +tags: + - 'WINDOWS' + - 'IIS' + - 'WEB SERVER' __int_icon : 'icon/iis' dashboard : - desc : 'IIS' @@ -10,11 +14,6 @@ monitor : path : 'monitor/zh/iis' --- - -# IIS - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/influxdb.md b/internal/export/doc/zh/inputs/influxdb.md index 0df0d4e766..2378614f5a 100644 --- a/internal/export/doc/zh/inputs/influxdb.md +++ b/internal/export/doc/zh/inputs/influxdb.md @@ -1,6 +1,8 @@ --- title : 'InfluxDB' summary : '采集 InfluxDB 指标数据' +tags: + - '数据库' __int_icon : 'icon/influxdb' dashboard : - desc : 'InfluxDB' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# InfluxDB - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/ipmi.md b/internal/export/doc/zh/inputs/ipmi.md index aadbe77bae..33c7a694ab 100644 --- a/internal/export/doc/zh/inputs/ipmi.md +++ b/internal/export/doc/zh/inputs/ipmi.md @@ -1,6 +1,8 @@ --- title : 'IPMI' summary : 'IPMI 指标展示被监测设备的电流、电压、功耗、占用率、风扇转速、温度以及设备状态等信息' +tags: + - 'IPMI' __int_icon : 'icon/ipmi' dashboard : - desc : '暂无' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# IPMI - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/jaeger.md b/internal/export/doc/zh/inputs/jaeger.md index 74a1a20d32..cecfaeb995 100644 --- a/internal/export/doc/zh/inputs/jaeger.md +++ b/internal/export/doc/zh/inputs/jaeger.md @@ -2,6 +2,9 @@ title : 'Jaeger' summary : '接收 Jaeger APM 数据' __int_icon : 'icon/jaeger' +tags : + - 'JAEGER' + - '链路追踪' dashboard : - desc : '暂无' path : '-' @@ -10,12 +13,6 @@ monitor : path : '-' --- - -# Jaeger - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/jenkins.md b/internal/export/doc/zh/inputs/jenkins.md index 033642f25b..3bfca8cd26 100644 --- a/internal/export/doc/zh/inputs/jenkins.md +++ b/internal/export/doc/zh/inputs/jenkins.md @@ -1,6 +1,9 @@ --- title : 'Jenkins' summary : '采集 Jenkins 的指标和日志' +tags: + - 'JENKINS' + - 'CI/CD' __int_icon : 'icon/jenkins' dashboard : - desc : 'Jenkins' @@ -10,12 +13,6 @@ monitor : path : 'monitor/zh/jenkins' --- - -# Jenkins - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/jvm.md b/internal/export/doc/zh/inputs/jvm.md index c3609985c2..b1534c42cc 100644 --- a/internal/export/doc/zh/inputs/jvm.md +++ b/internal/export/doc/zh/inputs/jvm.md @@ -1,6 +1,8 @@ --- title : 'JVM' summary : '采集 JVM 的指标数据' +tags: + - 'JAVA' __int_icon : 'icon/jvm' dashboard : - desc : 'JVM' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# JVM - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/kafka.md b/internal/export/doc/zh/inputs/kafka.md index a3ef1d8614..6a0c3ec01b 100644 --- a/internal/export/doc/zh/inputs/kafka.md +++ b/internal/export/doc/zh/inputs/kafka.md @@ -1,6 +1,9 @@ --- title : 'Kafka' summary : '采集 Kafka 的指标数据' +tags: + - '中间件' + - '消息队列' __int_icon : 'icon/kafka' dashboard : - desc : 'Kafka' @@ -10,12 +13,6 @@ monitor : path : 'monitor/zh/kafka' --- - -# Kafka - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/kafkamq.md b/internal/export/doc/zh/inputs/kafkamq.md index 01e3b2a9eb..0dad55350b 100644 --- a/internal/export/doc/zh/inputs/kafkamq.md +++ b/internal/export/doc/zh/inputs/kafkamq.md @@ -1,6 +1,9 @@ --- title : 'KafkaMQ' summary : '通过 Kafka 收集已有的指标和日志数据' +tags: + - '消息队列' + - '日志' __int_icon : 'icon/kafka' dashboard : - desc : '暂无' @@ -10,12 +13,6 @@ monitor : path : '-' --- - -# 订阅 Kafka 中的数据 - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/kubernetes-crd.md b/internal/export/doc/zh/inputs/kubernetes-crd.md index 84551d5bb4..3f6079313f 100644 --- a/internal/export/doc/zh/inputs/kubernetes-crd.md +++ b/internal/export/doc/zh/inputs/kubernetes-crd.md @@ -1,6 +1,10 @@ - -# Kubernetes CRD 扩展采集 - +--- +title : 'Kubernetes CRD' +summary : 'Create Datakit CRD to collect' +tags : + - 'PROMETHEUS' + - 'KUBERNETES' +__int_icon: 'icon/kubernetes' --- :material-kubernetes: diff --git a/internal/export/doc/zh/inputs/kubernetes-prom.md b/internal/export/doc/zh/inputs/kubernetes-prom.md index 11b9cecec2..0bdc7d9d61 100644 --- a/internal/export/doc/zh/inputs/kubernetes-prom.md +++ b/internal/export/doc/zh/inputs/kubernetes-prom.md @@ -1,7 +1,12 @@ - -# Prometheus Exporter 指标采集 - --- +title : 'Kubernetes Prometheus Exporter' +summary : '采集 Kubernetes 集群中自定义 Pod 暴露出来的 Prometheus 指标' +tags : + - 'PROMETHEUS' + - 'KUBERNETES' +__int_icon: 'icon/kubernetes' +--- + :fontawesome-brands-linux: :material-kubernetes: diff --git a/internal/export/doc/zh/inputs/kubernetes-prometheus-operator-crd.md b/internal/export/doc/zh/inputs/kubernetes-prometheus-operator-crd.md index 2f439f5350..c7febacfdb 100644 --- a/internal/export/doc/zh/inputs/kubernetes-prometheus-operator-crd.md +++ b/internal/export/doc/zh/inputs/kubernetes-prometheus-operator-crd.md @@ -1,4 +1,11 @@ -# Prometheus CRD 支持 +--- +title : 'Prometheus CRD' +summary : '支持 Prometheus-Operator CRD 并采集对应指标' +tags : + - 'PROMETHEUS' + - 'KUBERNETES' +__int_icon: 'icon/kubernetes' +--- ## 介绍 {#intro} diff --git a/internal/export/doc/zh/inputs/kubernetesprometheus.md b/internal/export/doc/zh/inputs/kubernetesprometheus.md index b9254d4573..c253277ed2 100644 --- a/internal/export/doc/zh/inputs/kubernetesprometheus.md +++ b/internal/export/doc/zh/inputs/kubernetesprometheus.md @@ -1,4 +1,11 @@ -# Datakit KubernetesPrometheus 采集器文档 +--- +title : 'Kubernetes Prometheus Discovery' +summary : '支持发现 Kubernetes 中的 Prometheus 指标暴露并采集' +tags : + - 'PROMETHEUS' + - 'KUBERNETES' +__int_icon: 'icon/kubernetes' +--- [:octicons-tag-24: Version-1.34.0](../datakit/changelog.md#cl-1.34.0) · [:octicons-beaker-24: Experimental](../datakit/index.md#experimental) diff --git a/internal/export/doc/zh/inputs/logfwd.md b/internal/export/doc/zh/inputs/logfwd.md index f6738405f7..f435ba8e3b 100644 --- a/internal/export/doc/zh/inputs/logfwd.md +++ b/internal/export/doc/zh/inputs/logfwd.md @@ -1,6 +1,10 @@ --- -title : 'Sidecar' +title : 'Log Sidecar' summary : 'Sidecar 形式的日志采集' +tags: + - 'KUBERNETES' + - '日志' + - '容器' __int_icon : 'icon/kubernetes' dashboard : - desc : '暂无' @@ -10,11 +14,6 @@ monitor : path : '-' --- - -# 通过 Sidecar 方式采集 Pod 日志 - - ---- :material-kubernetes: diff --git a/internal/export/doc/zh/inputs/logfwdserver.md b/internal/export/doc/zh/inputs/logfwdserver.md index a359acfb7f..d5433dbc51 100644 --- a/internal/export/doc/zh/inputs/logfwdserver.md +++ b/internal/export/doc/zh/inputs/logfwdserver.md @@ -1,6 +1,10 @@ --- title : 'Log Forward' summary : '通过 sidecar 方式收集 Pod 内日志数据' +tags: + - 'KUBERNETES' + - '日志' + - '容器' __int_icon : 'icon/logfwd' dashboard : - desc : '暂无' @@ -10,11 +14,6 @@ monitor : path : '-' --- - -# {{.InputName}} - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/logging-pipeline-bench.md b/internal/export/doc/zh/inputs/logging-pipeline-bench.md index 36ceda4851..51ff115685 100644 --- a/internal/export/doc/zh/inputs/logging-pipeline-bench.md +++ b/internal/export/doc/zh/inputs/logging-pipeline-bench.md @@ -1,6 +1,6 @@ - -# DataKit 日志采集器性能测试 - +--- +title: 'DataKit 日志采集器性能测试' +skip: 'not-searchable-on-index-page' --- ## 环境和工具 {#env-tools} diff --git a/internal/export/doc/zh/inputs/logging.md b/internal/export/doc/zh/inputs/logging.md index 6be8c3f06a..54dea1cc0e 100644 --- a/internal/export/doc/zh/inputs/logging.md +++ b/internal/export/doc/zh/inputs/logging.md @@ -1,6 +1,8 @@ --- title : '日志采集' summary : '采集主机上的日志数据' +tags: + - '日志' __int_icon : 'icon/logging' dashboard : - desc : '日志' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# 文件采集 - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/logging_socket.md b/internal/export/doc/zh/inputs/logging_socket.md index 6b8f5ec3c6..a388f6728e 100644 --- a/internal/export/doc/zh/inputs/logging_socket.md +++ b/internal/export/doc/zh/inputs/logging_socket.md @@ -1,6 +1,8 @@ --- -title : 'Socket' +title : 'Socket Logging' summary : '主要用于 Java/Go/Python 日志框架如何配置 Socket,将日志发送给 Datakit 日志采集器中。' +tags: + - '日志' __int_icon : 'icon/socket' dashboard : - desc : '暂无' @@ -10,13 +12,6 @@ monitor : path : '-' --- - -# Socket 日志接入示例 - - - ---- - 本篇主要介绍 Java/Go/Python 日志框架如何配置 Socket,将日志发送给 Datakit 日志采集器中。 > 文件采集和 Socket 采集是互斥的,开启 Socket 采集之前,请先关闭文件采集,参见[日志采集配置](logging.md) diff --git a/internal/export/doc/zh/inputs/logstreaming.md b/internal/export/doc/zh/inputs/logstreaming.md index 864f1f4e22..366ca4e9c6 100644 --- a/internal/export/doc/zh/inputs/logstreaming.md +++ b/internal/export/doc/zh/inputs/logstreaming.md @@ -1,6 +1,8 @@ --- title : 'Log Streaming' summary : '通过 HTTP 上报日志数据' +tags: + - '日志' __int_icon : 'icon/logstreaming' dashboard : - desc : '暂无' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Log Streaming - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/mem.md b/internal/export/doc/zh/inputs/mem.md index cd52b02aed..182850f858 100644 --- a/internal/export/doc/zh/inputs/mem.md +++ b/internal/export/doc/zh/inputs/mem.md @@ -1,6 +1,8 @@ --- title : '内存' summary : '采集主机内存的指标数据' +tags: + - '主机' __int_icon : 'icon/mem' dashboard : - desc : '内存' @@ -10,13 +12,6 @@ monitor : path : 'monitor/zh/host' --- - -# 内存 - - - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/memcached.md b/internal/export/doc/zh/inputs/memcached.md index 2145bb6fab..ea8fa5f8b8 100644 --- a/internal/export/doc/zh/inputs/memcached.md +++ b/internal/export/doc/zh/inputs/memcached.md @@ -1,6 +1,9 @@ --- title : 'Memcached' summary : '采集 Memcached 的指标数据' +tags: + - '缓存' + - '中间件' __int_icon : 'icon/memcached' dashboard : - desc : 'Memcached' @@ -10,12 +13,6 @@ monitor : path : '-' --- - -# Memcached - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/mongodb.md b/internal/export/doc/zh/inputs/mongodb.md index 2113f67769..56e65622c5 100644 --- a/internal/export/doc/zh/inputs/mongodb.md +++ b/internal/export/doc/zh/inputs/mongodb.md @@ -1,6 +1,8 @@ --- title : 'MongoDB' summary : '采集 MongoDB 的指标数据' +tags: + - '数据库' __int_icon : 'icon/mongodb' dashboard : - desc : 'Mongodb 监控视图' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# MongoDB - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/mysql.md b/internal/export/doc/zh/inputs/mysql.md index 4772f07404..b2b708872c 100644 --- a/internal/export/doc/zh/inputs/mysql.md +++ b/internal/export/doc/zh/inputs/mysql.md @@ -1,6 +1,8 @@ --- title : 'MySQL' summary : '采集 MySQL 的指标数据' +tags: + - '数据库' __int_icon : 'icon/mysql' dashboard : - desc : 'MySQL' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# MySQL - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/neo4j.md b/internal/export/doc/zh/inputs/neo4j.md index 6cb71d1c36..36dc0bebf7 100644 --- a/internal/export/doc/zh/inputs/neo4j.md +++ b/internal/export/doc/zh/inputs/neo4j.md @@ -1,6 +1,8 @@ --- title : 'Neo4j' summary : '采集 Neo4j 的指标数据' +tags: + - '数据库' __int_icon : 'icon/neo4j' dashboard : - desc : 'Neo4j' @@ -10,10 +12,6 @@ monitor : path : 'monitor/zh/neo4j' --- - -# Neo4j - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/net.md b/internal/export/doc/zh/inputs/net.md index 0ed58ee23d..49e7a494bf 100644 --- a/internal/export/doc/zh/inputs/net.md +++ b/internal/export/doc/zh/inputs/net.md @@ -1,6 +1,9 @@ --- title : 'Net' summary : '采集网卡的指标数据' +tags: + - '主机' + - '网络' __int_icon: 'icon/net' dashboard : - desc : 'Net' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# Net - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/netflow.md b/internal/export/doc/zh/inputs/netflow.md index 32d7410219..c37a29ddf1 100644 --- a/internal/export/doc/zh/inputs/netflow.md +++ b/internal/export/doc/zh/inputs/netflow.md @@ -1,6 +1,8 @@ --- title : 'NetFlow' summary : 'NetFlow 采集器可以用来可视化和监控已开启 NetFlow 的设备' +tags: + - '网络' __int_icon : 'icon/netflow' dashboard : - desc : 'NetFlow' @@ -10,10 +12,6 @@ monitor : path : 'monitor/zh/netflow' --- - -# NetFlow - ---- {{.AvailableArchs}} @@ -109,75 +107,75 @@ NetFlow 是最广泛使用的流量数据统计标准,由 Cisco 开发,用 - Root/NetFlow 节点 -| 字段 | 说明 | -| ----: | :---- | -| flush_timestamp | 上报时间 | -| type | 协议 | -| sampling_rate | 采样频率 | -| direction | 方向 | -| start | 开始时间 | -| end | 结束时间 | -| bytes | 传输字节数 | -| packets | 传输包数量 | +| 字段 | 说明 | +| ----: | :---- | +| flush_timestamp | 上报时间 | +| type | 协议 | +| sampling_rate | 采样频率 | +| direction | 方向 | +| start | 开始时间 | +| end | 结束时间 | +| bytes | 传输字节数 | +| packets | 传输包数量 | | ether_type | 以太网类型(IPv4/IPv6) | -| ip_protocol | IP 协议(TCP/UDP) | +| ip_protocol | IP 协议(TCP/UDP) | | device | 设备信息节点 | -| exporter | Exporter 信息节点 | +| exporter | Exporter 信息节点 | | source | Flow 来源端信息节点 | | destination | Flow 去向端信息节点 | -| ingress | 入口网关信息节点 | -| egress | 出口网关信息节点 | -| host | Collector 的 Hostname | -| tcp_flags | TCP 标记 | +| ingress | 入口网关信息节点 | +| egress | 出口网关信息节点 | +| host | Collector 的 Hostname | +| tcp_flags | TCP 标记 | | next_hop | Next_Hop 属性信息节点 | - `device` 节点 -| 字段 | 说明 | -| ----: | :---- | +| 字段 | 说明 | +| ----: | :---- | | namespace | 命名空间 | - `exporter` 节点 -| 字段 | 说明 | -| ----: | :---- | -| ip | Exporter 的 IP | +| 字段 | 说明 | +| ----: | :---- | +| ip | Exporter 的 IP | - `source` 节点 -| 字段 | 说明 | -| ----: | :---- | -| ip | 来源端的 IP 地址 | -| port | 来源端的端口 | -| mac | 来源端的 MAC 地址 | -| mask | 来源端的网络掩码 | +| 字段 | 说明 | +| ----: | :---- | +| ip | 来源端的 IP 地址 | +| port | 来源端的端口 | +| mac | 来源端的 MAC 地址 | +| mask | 来源端的网络掩码 | - `destination` 节点 -| 字段 | 说明 | -| ----: | :---- | -| ip | 去向端的 IP 地址 | -| port | 去向端的端口 | -| mac | 去向端的 MAC 地址 | -| mask | 去向端的 IP 网络掩码 | +| 字段 | 说明 | +| ----: | :---- | +| ip | 去向端的 IP 地址 | +| port | 去向端的端口 | +| mac | 去向端的 MAC 地址 | +| mask | 去向端的 IP 网络掩码 | - `ingress` 节点 -| 字段 | 说明 | -| ----: | :---- | +| 字段 | 说明 | +| ----: | :---- | | interface | 网口编号 | - `egress` 节点 -| 字段 | 说明 | -| ----: | :---- | +| 字段 | 说明 | +| ----: | :---- | | interface | 网口编号 | - `next_hop` 节点 -| 字段 | 说明 | -| ----: | :---- | -| ip | Next_Hop 属性中去往目的地的下一跳 IP 地址 | +| 字段 | 说明 | +| ----: | :---- | +| ip | Next_Hop 属性中去往目的地的下一跳 IP 地址 | ## 指标集 {#metric} diff --git a/internal/export/doc/zh/inputs/netstat.md b/internal/export/doc/zh/inputs/netstat.md index a9e42903a1..e967ec28a2 100644 --- a/internal/export/doc/zh/inputs/netstat.md +++ b/internal/export/doc/zh/inputs/netstat.md @@ -1,6 +1,9 @@ --- title : 'NetStat' summary : '采集网卡流量指标数据' +tags: + - '网络' + - '主机' __int_icon : 'icon/netstat' dashboard : - desc : 'NetStat' @@ -10,11 +13,6 @@ monitor : path : 'monitor/zh/netstat' --- - -# NetStat - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/newrelic.md b/internal/export/doc/zh/inputs/newrelic.md index e57b84e0b5..2acee12f03 100644 --- a/internal/export/doc/zh/inputs/newrelic.md +++ b/internal/export/doc/zh/inputs/newrelic.md @@ -1,6 +1,9 @@ --- title : 'New Relic' -summary : '接收来自 New Relic Agemt 的数据' +summary : '接收来自 New Relic Agent 的数据' +tags: + - 'NEWRELIC' + - '链路追踪' __int_icon : '' dashboard : - desc : 'N/A' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# New Relic For .Net - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/nginx.md b/internal/export/doc/zh/inputs/nginx.md index f44e86a7b5..120f585423 100644 --- a/internal/export/doc/zh/inputs/nginx.md +++ b/internal/export/doc/zh/inputs/nginx.md @@ -1,6 +1,9 @@ --- title : 'Nginx' summary : '采集 Nginx 的指标数据' +tags: + - 'WEB SERVER' + - '中间件' __int_icon : 'icon/nginx' dashboard : - desc : 'Nginx' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# Nginx - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/nsq.md b/internal/export/doc/zh/inputs/nsq.md index ebfed07937..98833e80cc 100644 --- a/internal/export/doc/zh/inputs/nsq.md +++ b/internal/export/doc/zh/inputs/nsq.md @@ -1,6 +1,9 @@ --- title : 'NSQ' summary : '采集 NSQ 的指标数据' +tags: + - '消息队列' + - '中间件' __int_icon : 'icon/nsq' dashboard : - desc : 'NSQ' @@ -10,11 +13,6 @@ monitor : path : 'monitor/zh/nsq' --- - -# NSQ - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/oceanbase.md b/internal/export/doc/zh/inputs/oceanbase.md index 428a00c025..1f189b1489 100644 --- a/internal/export/doc/zh/inputs/oceanbase.md +++ b/internal/export/doc/zh/inputs/oceanbase.md @@ -1,6 +1,8 @@ --- title : 'OceanBase' summary : '采集 OceanBase 的指标数据' +tags: + - '数据库' __int_icon : 'icon/oceanbase' dashboard : - desc : 'OceanBase' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# OceanBase - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/opentelemetry-go.md b/internal/export/doc/zh/inputs/opentelemetry-go.md index ab0f9b769d..9ae207ae18 100644 --- a/internal/export/doc/zh/inputs/opentelemetry-go.md +++ b/internal/export/doc/zh/inputs/opentelemetry-go.md @@ -1,5 +1,13 @@ -# Golang 示例 --- +title : 'OpenTelemetry Golang' +summary : 'OpenTelemetry Golang 集成' +tags : + - 'GOLANG' + - 'OTEL' + - '链路追踪' +__int_icon: 'icon/opentelemetry' +--- + 本文以常见 Web 端三层架构模式实现 OTEL 的链路追踪及可观测性。 diff --git a/internal/export/doc/zh/inputs/opentelemetry-java.md b/internal/export/doc/zh/inputs/opentelemetry-java.md index 7de4531870..5728418176 100644 --- a/internal/export/doc/zh/inputs/opentelemetry-java.md +++ b/internal/export/doc/zh/inputs/opentelemetry-java.md @@ -1,5 +1,13 @@ -# Java 示例 --- +title : 'OpenTelemetry Java' +summary : 'OpenTelemetry Java 集成' +tags : + - 'JAVA' + - 'OTEL' + - '链路追踪' +__int_icon: 'icon/opentelemetry' +--- + 在使用 OTEL 发送 Trace 到 Datakit 之前,请先确定您已经[配置好了采集器](opentelemetry.md)。 diff --git a/internal/export/doc/zh/inputs/opentelemetry.md b/internal/export/doc/zh/inputs/opentelemetry.md index 2ee94f063a..2e253093c5 100644 --- a/internal/export/doc/zh/inputs/opentelemetry.md +++ b/internal/export/doc/zh/inputs/opentelemetry.md @@ -1,7 +1,10 @@ --- title : 'OpenTelemetry' summary : '接收 OpenTelemetry 指标、日志、APM 数据' -__int_icon : 'icon/opentelemetry' +__int_icon: 'icon/opentelemetry' +tags : + - 'OTEL' + - '链路追踪' dashboard : - desc : 'Opentelemetry JVM 监控视图' path : 'dashboard/zh/opentelemetry' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# OpenTelemetry - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/oracle.md b/internal/export/doc/zh/inputs/oracle.md index 3ea41dc906..7e4dcbc001 100644 --- a/internal/export/doc/zh/inputs/oracle.md +++ b/internal/export/doc/zh/inputs/oracle.md @@ -1,6 +1,8 @@ --- title : 'Oracle' summary : '采集 Oracle 的指标数据' +tags: + - '数据库' __int_icon : 'icon/oracle' dashboard : - desc : 'Oracle' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# Oracle - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/otel-ext-changelog.md b/internal/export/doc/zh/inputs/otel-ext-changelog.md index d10e8f4a90..421c99b393 100644 --- a/internal/export/doc/zh/inputs/otel-ext-changelog.md +++ b/internal/export/doc/zh/inputs/otel-ext-changelog.md @@ -1,3 +1,7 @@ +--- +skip: 'not-searchable-on-index-page' +--- + # 更新历史 --- diff --git a/internal/export/doc/zh/inputs/otel-sql-obfuscation.md b/internal/export/doc/zh/inputs/otel-ext-java.md similarity index 78% rename from internal/export/doc/zh/inputs/otel-sql-obfuscation.md rename to internal/export/doc/zh/inputs/otel-ext-java.md index 38a3bb02b1..8d7b8f44a9 100644 --- a/internal/export/doc/zh/inputs/otel-sql-obfuscation.md +++ b/internal/export/doc/zh/inputs/otel-ext-java.md @@ -1,8 +1,16 @@ -# OTEL SQL 脱敏 +--- +title : 'OpenTelemetry 扩展' +summary : '观测云对 OpenTelemetry 插件做了额外的扩展' +__int_icon : 'icon/opentelemetry' +tags : + - 'OTEL' + - '链路追踪' --- > *作者: 宋龙奇* +## SQL 脱敏 {#sql-obfuscation} + SQL 脱敏 也是狭义的 DB 语句清理。 按照 OTEL 官方说法是: @@ -25,7 +33,7 @@ agent 在设置 `db.statement` 语义属性之前清理所有数据库查询/语 说明:启用 DB 语句清理。 ``` -## DB 语句清理和结果 {#why} +### DB 语句清理和结果 {#why} 大部分语句中都包括一些敏感数据包括:用户名,手机号,密码,卡号等等。通过敏感处理能够过滤掉这些数据,另一个原因就是方便进行分组筛选操作。 @@ -60,9 +68,9 @@ ps.setString(2,pw); // 替换第二个? 从根本上解决脱敏问题。需要加探针加在 `set` 上。先将参数缓存之后才是 `exectue()` , 最终将参数放到 Attributes 中。 -## 观测云二次开发 {#guacne-branch} +### 观测云扩展 {#guacne-branch} -想要获取清洗前的数据以及后续通过 `set` 函数添加的值,就需要进行新的埋点, 并添加环境变量: +想要获取脱敏前的数据以及后续通过 `set` 函数添加的值,就需要进行新的埋点, 并添加环境变量: ```shell -Dotel.jdbc.sql.obfuscation=true @@ -78,20 +86,15 @@ OTEL_JDBC_SQL_OBFUSCATION=true
链路详情
+### 常见问题 {#question} -## 常见问题 {#question} - -1. 开启 `-Dotel.jdbc.sql.obfuscation=true` 但是没有关闭 DB 语句清洗 +1. 开启 `-Dotel.jdbc.sql.obfuscation=true` 但是没有关闭 DB 语句脱敏 - ```text - 可能会出现占位符和 `origin_sql_x` 数量对不上。原因是因为有的参数已经在 DB 语句清洗中被占位符替换掉了。 - ``` +可能会出现占位符和 `origin_sql_x` 数量对不上,原因是因为有的参数已经在 DB 语句脱敏中被占位符替换掉了。 -2. 开启 `-Dotel.jdbc.sql.obfuscation=true` 关闭 DB 语句清洗 +1. 开启 `-Dotel.jdbc.sql.obfuscation=true` 关闭 DB 语句脱敏 - ```text - 如果语句过长或者换行符很多,没有进行格式化的情况下语句会很混乱。同时也会造成没必要的流量浪费。 - ``` +如果语句过长或者换行符很多,没有进行格式化的情况下语句会很混乱。同时也会造成没必要的流量浪费。 ## 更多 {#more} diff --git a/internal/export/doc/zh/inputs/otel-guance-exporter.md b/internal/export/doc/zh/inputs/otel-guance-exporter.md index ab6e4f07d1..de351375b0 100644 --- a/internal/export/doc/zh/inputs/otel-guance-exporter.md +++ b/internal/export/doc/zh/inputs/otel-guance-exporter.md @@ -1,4 +1,10 @@ -# OpenTelemetry guance-exporter +--- +title : '观测云 OpenTelemetry Exportor' +summary : '直接将 OpenTelemetry 的数据输出给观测云' +__int_icon : 'icon/opentelemetry' +tags : + - 'OTEL' +--- > *作者: 宋龙奇* diff --git a/internal/export/doc/zh/inputs/pinpoint-go.md b/internal/export/doc/zh/inputs/pinpoint-go.md index 33a81941cc..85273d73a7 100644 --- a/internal/export/doc/zh/inputs/pinpoint-go.md +++ b/internal/export/doc/zh/inputs/pinpoint-go.md @@ -1,4 +1,12 @@ -# Golang 示例 +--- +title : 'PinPoint Golang' +summary : 'PinPoint Golang 集成' +__int_icon: 'icon/pinpoint' +tags : + - 'PINPOINT' + - 'GOLANG' + - '链路追踪' +--- - [Pinpoint Golang Agent 代码仓库](https://github.com/pinpoint-apm/pinpoint-go-agent){:target="_blank"} - [Pinpoint Golang 代码示例](https://github.com/pinpoint-apm/pinpoint-go-agent/tree/main/example){:target="_blank"} @@ -458,4 +466,4 @@ Pinpoint Golang Agent 中可以通过两种方式进行手动检测: wg.Wait() } ``` - \ No newline at end of file + diff --git a/internal/export/doc/zh/inputs/pinpoint-java.md b/internal/export/doc/zh/inputs/pinpoint-java.md index 8de2c8e3c1..b5578af60c 100644 --- a/internal/export/doc/zh/inputs/pinpoint-java.md +++ b/internal/export/doc/zh/inputs/pinpoint-java.md @@ -1,4 +1,12 @@ -# Java 示例 +--- +title : 'PinPoint Java' +summary : 'PinPoint Java 集成' +__int_icon: 'icon/pinpoint' +tags : + - 'PINPOINT' + - 'JAVA' + - '链路追踪' +--- Pinpoint Java Agent [下载地址](https://github.com/pinpoint-apm/pinpoint/releases){:target="_blank"} diff --git a/internal/export/doc/zh/inputs/pinpoint.md b/internal/export/doc/zh/inputs/pinpoint.md index 9b7f215001..b304154250 100644 --- a/internal/export/doc/zh/inputs/pinpoint.md +++ b/internal/export/doc/zh/inputs/pinpoint.md @@ -1,7 +1,10 @@ --- title : 'Pinpoint' summary : 'Pinpoint Tracing 数据接入' -__int_icon : 'icon/pinpoint' +tags : + - 'PINPOINT' + - '链路追踪' +__int_icon: 'icon/pinpoint' dashboard : - desc : '暂无' path : '-' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# Pinpoint - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/ploffload.md b/internal/export/doc/zh/inputs/ploffload.md index 8dabaebc7d..3c07b9d6c6 100644 --- a/internal/export/doc/zh/inputs/ploffload.md +++ b/internal/export/doc/zh/inputs/ploffload.md @@ -1,7 +1,9 @@ --- -title : 'ploffload' -summary : '接收来自 datakit pipeline 卸载的待处理数据' -__int_icon : 'icon/ploffload' +title : 'Pipeline Offload' +summary : '接收来自 Datakit Pipeline 卸载的待处理数据' +__int_icon: 'icon/ploffload' +tags : + - 'PIPELINE' dashboard : - desc : '暂无' path : '-' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# PlOffload - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/postgresql.md b/internal/export/doc/zh/inputs/postgresql.md index 94291f6fa9..55684552f6 100644 --- a/internal/export/doc/zh/inputs/postgresql.md +++ b/internal/export/doc/zh/inputs/postgresql.md @@ -1,6 +1,8 @@ --- title : 'PostgreSQL' summary : '采集 PostgreSQL 的指标数据' +tags: + - '数据库' __int_icon : 'icon/postgresql' dashboard : - desc : 'PostgrepSQL' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# PostgreSQL - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/profile-cpp.md b/internal/export/doc/zh/inputs/profile-cpp.md index bcb97ce216..bd7b52fae4 100644 --- a/internal/export/doc/zh/inputs/profile-cpp.md +++ b/internal/export/doc/zh/inputs/profile-cpp.md @@ -1,4 +1,11 @@ -# C/C++ Profiling +--- +title : 'Profiling C++' +summary : 'C++ Profiling 集成' +tags: + - 'C/C++' + - 'PROFILE' +__int_icon: 'icon/profiling' +--- 目前 DataKit 支持 1 种方式来采集 C/C++ profiling 数据,即 [Pyroscope](https://pyroscope.io/){:target="_blank"}。 diff --git a/internal/export/doc/zh/inputs/profile-dotnet.md b/internal/export/doc/zh/inputs/profile-dotnet.md index 564c0137b5..141404f4ee 100644 --- a/internal/export/doc/zh/inputs/profile-dotnet.md +++ b/internal/export/doc/zh/inputs/profile-dotnet.md @@ -1,5 +1,10 @@ -# .NET profiling - +--- +title : 'Profiling Golang' +summary : '.Net Profiling 集成' +tags: + - '.Net' + - 'PROFILE' +__int_icon: 'icon/profiling' --- 从 Datakit [:octicons-tag-24: Version-1.12.0](../datakit/changelog.md#cl-1.12.0){:target="_blank"} 开始支持使用 [`dd-trace-dotnet`](https://github.com/DataDog/dd-trace-dotnet){:target="_blank"} 作为 `.NET` 平台的应用性能监测工具。 diff --git a/internal/export/doc/zh/inputs/profile-go.md b/internal/export/doc/zh/inputs/profile-go.md index 829f85f88a..fffedaa74e 100644 --- a/internal/export/doc/zh/inputs/profile-go.md +++ b/internal/export/doc/zh/inputs/profile-go.md @@ -1,7 +1,12 @@ - -# Go profiling - --- +title : 'Profiling Golang' +summary : 'Golang Profiling 集成' +tags: + - 'GOLANG' + - 'PROFILE' +__int_icon: 'icon/profiling' +--- + Go 内置了性能分析 (Profiling) 工具 `pprof`,可以采集程序运行中的性能数据,可通过以下两种方式使用: diff --git a/internal/export/doc/zh/inputs/profile-java.md b/internal/export/doc/zh/inputs/profile-java.md index 3fb9b0667f..8126afae88 100644 --- a/internal/export/doc/zh/inputs/profile-java.md +++ b/internal/export/doc/zh/inputs/profile-java.md @@ -1,6 +1,10 @@ - -# Java profiling - +--- +title : 'Profiling Java' +summary : 'Java Profiling 集成' +tags: + - 'JAVA' + - 'PROFILE' +__int_icon: 'icon/profiling' --- DataKit 支持两种采集器来采集 Java profiling 数据, [`dd-trace-java`](https://github.com/DataDog/dd-trace-java){:target="_blank"} 和 [async-profiler](https://github.com/async-profiler/async-profiler){:target="_blank"}。 diff --git a/internal/export/doc/zh/inputs/profile-nodejs.md b/internal/export/doc/zh/inputs/profile-nodejs.md index 82ed6fedba..3508b19cf0 100644 --- a/internal/export/doc/zh/inputs/profile-nodejs.md +++ b/internal/export/doc/zh/inputs/profile-nodejs.md @@ -1,4 +1,11 @@ -# NodeJS Profiling +--- +title : 'Profiling NodeJS' +summary : 'NodeJS Profiling 集成' +tags: + - 'NODEJS' + - 'PROFILE' +__int_icon: 'icon/profiling' +--- [:octicons-tag-24: Version-1.9.0](../datakit/changelog.md#cl-1.9.0) diff --git a/internal/export/doc/zh/inputs/profile-php.md b/internal/export/doc/zh/inputs/profile-php.md index 1661220d80..0e7a2c5a87 100644 --- a/internal/export/doc/zh/inputs/profile-php.md +++ b/internal/export/doc/zh/inputs/profile-php.md @@ -1,6 +1,12 @@ -# PHP profiling - --- +title : 'Profiling PHP' +summary : 'PHP Profiling 集成' +tags: + - 'PHP' + - 'PROFILE' +__int_icon: 'icon/profiling' +--- + 从 Datakit [:octicons-tag-24: Version-1.13.0](../datakit/changelog.md#cl-1.13.0){:target="_blank"} 开始支持使用 [`dd-trace-php`](https://github.com/DataDog/dd-trace-php){:target="_blank"} 作为 `PHP` 项目的应用性能监测工具。 diff --git a/internal/export/doc/zh/inputs/profile-python.md b/internal/export/doc/zh/inputs/profile-python.md index f2080a76e9..ec6b72d564 100644 --- a/internal/export/doc/zh/inputs/profile-python.md +++ b/internal/export/doc/zh/inputs/profile-python.md @@ -1,4 +1,11 @@ -# Python profiling +--- +title : 'Profiling Python' +summary : 'Python Profiling 集成' +tags: + - 'PYTHON' + - 'PROFILE' +__int_icon: 'icon/profiling' +--- 目前 DataKit Python profiling 支持 [dd-trace-py](https://github.com/DataDog/dd-trace-py){:target="_blank"} 和 [py-spy](https://github.com/benfred/py-spy){:target="_blank"} 两种性能采集器。 diff --git a/internal/export/doc/zh/inputs/profile.md b/internal/export/doc/zh/inputs/profile.md index 501e4c5d9a..9742b726a3 100644 --- a/internal/export/doc/zh/inputs/profile.md +++ b/internal/export/doc/zh/inputs/profile.md @@ -2,6 +2,8 @@ title : 'Profiling' summary : '采集应用程序的运行时性能数据' __int_icon: 'icon/profiling' +tags: + - 'PROFILE' dashboard : - desc : '暂无' path : '-' @@ -10,12 +12,6 @@ monitor : path : '-' --- - - -# Profiling - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/prom.md b/internal/export/doc/zh/inputs/prom.md index 1c1471d5b9..84be2e2daf 100644 --- a/internal/export/doc/zh/inputs/prom.md +++ b/internal/export/doc/zh/inputs/prom.md @@ -1,7 +1,10 @@ --- title : 'Prometheus Exporter' summary : '采集 Prometheus Exporter 暴露的指标数据' -__int_icon : 'icon/prometheus' +tags: + - '外部数据接入' + - 'PROMETHEUS' +__int_icon: 'icon/prometheus' dashboard : - desc : '暂无' path : '-' @@ -10,12 +13,6 @@ monitor : path : '-' --- - -# Prometheus Exporter 数据采集 - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/prom_remote_write.md b/internal/export/doc/zh/inputs/prom_remote_write.md index ead99fc616..8e661dd11b 100644 --- a/internal/export/doc/zh/inputs/prom_remote_write.md +++ b/internal/export/doc/zh/inputs/prom_remote_write.md @@ -1,7 +1,10 @@ --- title : 'Prometheus Remote Write' summary : '通过 Prometheus Remote Write 汇集指标数据' -__int_icon : 'icon/prometheus' +tags: + - '外部数据接入' + - 'PROMETHEUS' +__int_icon: 'icon/prometheus' dashboard : - desc : '暂无' path : '-' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# Prometheus Remote Write - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/promtail.md b/internal/export/doc/zh/inputs/promtail.md index b2bfd30acc..beeb01c1a7 100644 --- a/internal/export/doc/zh/inputs/promtail.md +++ b/internal/export/doc/zh/inputs/promtail.md @@ -1,6 +1,8 @@ --- title : 'Promtail' summary : '采集 Promtail 上报的日志数据' +tags: + - '外部数据接入' __int_icon : 'icon/promtail' dashboard : - desc : '暂无' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# Promtail 数据接入 - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/proxy.md b/internal/export/doc/zh/inputs/proxy.md index 2298630cca..6bc31eeee0 100644 --- a/internal/export/doc/zh/inputs/proxy.md +++ b/internal/export/doc/zh/inputs/proxy.md @@ -1,7 +1,9 @@ --- title : 'Proxy' summary : '代理 Datakit 的 HTTP 请求' -__int_icon : 'icon/proxy' +tags: + - 'PROXY' +__int_icon: 'icon/proxy' dashboard : - desc : '暂无' path : '-' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# DataKit 代理 - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/pushgateway.md b/internal/export/doc/zh/inputs/pushgateway.md index d8cd382972..27f316368a 100644 --- a/internal/export/doc/zh/inputs/pushgateway.md +++ b/internal/export/doc/zh/inputs/pushgateway.md @@ -1,6 +1,9 @@ --- title : 'Prometheus Push Gateway' summary : '开启 Pushgateway API,接收 Prometheus 指标数据' +tags: + - '外部数据接入' + - 'PROMETHEUS' __int_icon : 'icon/pushgateway' dashboard : - desc : '暂无' @@ -10,11 +13,6 @@ monitor : path : '-' --- - -# Pushgateway - ---- - {{.AvailableArchs}} · [:octicons-tag-24: Version-1.31.0](../datakit/changelog.md#cl-1.31.0) · [:octicons-beaker-24: Experimental](../datakit/index.md#experimental) --- diff --git a/internal/export/doc/zh/inputs/pythond.md b/internal/export/doc/zh/inputs/pythond.md index bebfa6d4f2..1c2443dd05 100644 --- a/internal/export/doc/zh/inputs/pythond.md +++ b/internal/export/doc/zh/inputs/pythond.md @@ -1,6 +1,8 @@ --- title : 'Pythond' summary : '通过 Python 扩展采集数据' +tags: + - 'PYTHON' __int_icon : 'icon/pythond' dashboard : - desc : '暂无' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# 用 Python 开发自定义采集器 - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/rabbitmq.md b/internal/export/doc/zh/inputs/rabbitmq.md index 944a416289..f6dac08b75 100644 --- a/internal/export/doc/zh/inputs/rabbitmq.md +++ b/internal/export/doc/zh/inputs/rabbitmq.md @@ -1,6 +1,9 @@ --- title : 'RabbitMQ' summary : '采集 RabbitMQ 的指标数据' +tags: + - '消息队列' + - '中间件' __int_icon : 'icon/rabbitmq' dashboard : - desc : 'RabbitMQ' @@ -10,12 +13,6 @@ monitor : path : 'monitor/zh/rabbitmq' --- - -# RabbitMQ - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/redis.md b/internal/export/doc/zh/inputs/redis.md index 4d80405943..decc2ae96e 100644 --- a/internal/export/doc/zh/inputs/redis.md +++ b/internal/export/doc/zh/inputs/redis.md @@ -1,6 +1,9 @@ --- title : 'Redis' summary : 'Redis 指标和日志采集' +tags: + - '缓存' + - '中间件' __int_icon : 'icon/redis' dashboard : - desc : 'Redis' @@ -10,12 +13,6 @@ monitor: path: 'monitor/zh/redis' --- - -# Redis - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/rum.md b/internal/export/doc/zh/inputs/rum.md index d29576d06e..433e54f573 100644 --- a/internal/export/doc/zh/inputs/rum.md +++ b/internal/export/doc/zh/inputs/rum.md @@ -1,6 +1,8 @@ --- title : 'RUM' summary : '采集用户行为数据' +tags: + - 'RUM' __int_icon : 'icon/rum' dashboard : - desc : '暂无' @@ -10,11 +12,6 @@ monitor : path : '-' --- - -# RUM - - ---- {{.AvailableArchs}} diff --git a/internal/export/doc/zh/inputs/sec-checker.md b/internal/export/doc/zh/inputs/sec-checker.md index 99b8adba54..58fddd8808 100644 --- a/internal/export/doc/zh/inputs/sec-checker.md +++ b/internal/export/doc/zh/inputs/sec-checker.md @@ -1,6 +1,9 @@ - -# Scheck 接入 - +--- +title : 'SCheck' +summary : '接收 SCheck 采集的数据' +tags: + - '安全' +__int_icon: 'icon/scheck' --- 操作系统支持::fontawesome-brands-linux: :fontawesome-brands-windows: diff --git a/internal/export/doc/zh/inputs/sensors.md b/internal/export/doc/zh/inputs/sensors.md index 14721ce681..d9b76d1abd 100644 --- a/internal/export/doc/zh/inputs/sensors.md +++ b/internal/export/doc/zh/inputs/sensors.md @@ -1,6 +1,8 @@ --- title : '硬件 Sensors 数据采集' summary : '通过 Sensors 命令采集硬件温度指标' +tags: + - '主机' __int_icon : 'icon/sensors' dashboard : - desc : '暂无' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# 硬件温度 Sensors - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/skywalking.md b/internal/export/doc/zh/inputs/skywalking.md index 3fa0a03e14..b13c72f834 100644 --- a/internal/export/doc/zh/inputs/skywalking.md +++ b/internal/export/doc/zh/inputs/skywalking.md @@ -1,7 +1,10 @@ --- title : 'SkyWalking' summary : 'SkyWalking Tracing 数据接入' -__int_icon : 'icon/skywalking' +tags: + - '链路追踪' + - 'SKYWALKING' +__int_icon: 'icon/skywalking' dashboard : - desc : 'Skywalking JVM 监控视图' path : 'dashboard/zh/skywalking' @@ -10,12 +13,6 @@ monitor : path : '-' --- - -# SkyWalking - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/smart.md b/internal/export/doc/zh/inputs/smart.md index d5c9ec78ee..6db77febeb 100644 --- a/internal/export/doc/zh/inputs/smart.md +++ b/internal/export/doc/zh/inputs/smart.md @@ -1,6 +1,8 @@ --- title : '磁盘 S.M.A.R.T' -summary : '通过 smartctl 采集磁盘指标' +summary : '通过 `smartctl` 采集磁盘指标' +tags: + - '主机' __int_icon : 'icon/smartctl' dashboard : - desc : '暂无' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# 磁盘 S.M.A.R.T - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/snmp.md b/internal/export/doc/zh/inputs/snmp.md index 9e5998d0b2..f09b637687 100644 --- a/internal/export/doc/zh/inputs/snmp.md +++ b/internal/export/doc/zh/inputs/snmp.md @@ -1,6 +1,8 @@ --- title : 'SNMP' summary : '采集 SNMP 设备的指标和对象数据' +tags: + - 'SNMP' __int_icon : 'icon/snmp' dashboard : - desc : '暂无' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# SNMP - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/socket.md b/internal/export/doc/zh/inputs/socket.md index 08cf2246d1..51e2e1dc45 100644 --- a/internal/export/doc/zh/inputs/socket.md +++ b/internal/export/doc/zh/inputs/socket.md @@ -1,6 +1,8 @@ --- title : 'Socket' summary : '采集 TCP/UDP 端口的指标数据' +tags: + - '网络' __int_icon : 'icon/socket' dashboard : - desc : 'Socket' @@ -10,12 +12,6 @@ monitor : path : 'monitor/zh/socket' --- - -# Socket - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/solr.md b/internal/export/doc/zh/inputs/solr.md index b7aa771da0..1341a914a7 100644 --- a/internal/export/doc/zh/inputs/solr.md +++ b/internal/export/doc/zh/inputs/solr.md @@ -1,6 +1,8 @@ --- title : 'Solr' summary : '采集 Solr 的指标数据' +tags: + - '数据库' __int_icon : 'icon/solr' dashboard : - desc : 'Solr' @@ -10,12 +12,6 @@ monitor : path : 'monitor/zh/solr' --- - -# Solr - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/sqlserver.md b/internal/export/doc/zh/inputs/sqlserver.md index 256652942d..d34a154929 100644 --- a/internal/export/doc/zh/inputs/sqlserver.md +++ b/internal/export/doc/zh/inputs/sqlserver.md @@ -1,6 +1,8 @@ --- title : 'SQLServer' summary : '采集 SQLServer 的指标数据' +tags: + - '数据库' __int_icon : 'icon/sqlserver' dashboard : - desc : 'SQLServer' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# SQLServer - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/ssh.md b/internal/export/doc/zh/inputs/ssh.md index b8538a5e18..d0af6e72bc 100644 --- a/internal/export/doc/zh/inputs/ssh.md +++ b/internal/export/doc/zh/inputs/ssh.md @@ -1,6 +1,8 @@ --- title : 'SSH' summary : '采集 SSH 的指标数据' +tags: + - '主机' __int_icon : 'icon/ssh' dashboard : - desc : 'SSH' @@ -10,12 +12,6 @@ monitor : path : 'monitor/zh/ssh' --- - -# SSH - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/statsd.md b/internal/export/doc/zh/inputs/statsd.md index b642939950..a3e32d9077 100644 --- a/internal/export/doc/zh/inputs/statsd.md +++ b/internal/export/doc/zh/inputs/statsd.md @@ -1,6 +1,8 @@ --- title : 'StatsD' summary : '收集 StatsD 上报的指标数据' +tags: + - '外部数据接入' __int_icon : 'icon/statsd' dashboard : - desc : '暂无' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# StatsD 数据接入 - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/swap.md b/internal/export/doc/zh/inputs/swap.md index 2b5d17eb58..c35719edd1 100644 --- a/internal/export/doc/zh/inputs/swap.md +++ b/internal/export/doc/zh/inputs/swap.md @@ -1,6 +1,8 @@ --- title : 'Swap' summary : '采集主机 swap 的指标数据' +tags: + - '主机' __int_icon : 'icon/swap' dashboard : - desc : 'Swap' @@ -10,14 +12,6 @@ monitor : path : 'monitor/zh/host' --- - -# Swap - - - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/system.md b/internal/export/doc/zh/inputs/system.md index 91ba75930d..75c9f23997 100644 --- a/internal/export/doc/zh/inputs/system.md +++ b/internal/export/doc/zh/inputs/system.md @@ -1,6 +1,8 @@ --- title : 'System' summary : '采集主机系统相关的指标数据' +tags: + - '主机' __int_icon : 'icon/system' dashboard : - desc : 'System' @@ -10,14 +12,6 @@ monitor : path : '-' --- - -# System - - - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/tdengine.md b/internal/export/doc/zh/inputs/tdengine.md index 18e9400fd0..ead30a9914 100644 --- a/internal/export/doc/zh/inputs/tdengine.md +++ b/internal/export/doc/zh/inputs/tdengine.md @@ -1,6 +1,8 @@ --- title : 'TDengine' summary : '采集 TDengine 的指标数据' +tags: + - '数据库' __int_icon : 'icon/tdengine' dashboard : - desc : 'TDengine' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# TDengine - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/telegraf.md b/internal/export/doc/zh/inputs/telegraf.md index 0406a46a55..700a7c8495 100644 --- a/internal/export/doc/zh/inputs/telegraf.md +++ b/internal/export/doc/zh/inputs/telegraf.md @@ -1,6 +1,9 @@ - -# Telegraf 数据接入 - +--- +title : 'Telegraf' +summary : '接收 Telegraf 采集的数据' +tags: + - '外部数据接入' +__int_icon: 'icon/telegraf' --- :fontawesome-brands-linux: :fontawesome-brands-windows: :fontawesome-brands-apple: @@ -11,7 +14,7 @@ ???+ attention 建议在使用 Telegraf 之前,先确 DataKit 是否能满足期望的数据采集。如果 DataKit 已经支持,不建议用 Telegraf 来采集,这可能会导致数据冲突,从而造成使用上的困扰。 - + Telegraf 是一个开源的数据采集工具。DataKit 通过简单的配置即可接入 Telegraf 采集的数据集。 diff --git a/internal/export/doc/zh/inputs/tomcat.md b/internal/export/doc/zh/inputs/tomcat.md index 1e4edbd96b..fb6e2869d9 100644 --- a/internal/export/doc/zh/inputs/tomcat.md +++ b/internal/export/doc/zh/inputs/tomcat.md @@ -1,7 +1,10 @@ --- title : 'Tomcat' summary : '采集 Tomcat 的指标数据' -__int_icon : 'icon/tomcat' +tags: + - 'WEB SERVER' + - '中间件' +__int_icon : 'icon/tomcat' dashboard : - desc : 'Tomcat' path : 'dashboard/zh/tomcat' @@ -10,12 +13,6 @@ monitor : path : 'monitor/zh/tomcat' --- - -# Tomcat - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/tracing-propagator.md b/internal/export/doc/zh/inputs/tracing-propagator.md index 13123d5eee..55725f12ce 100644 --- a/internal/export/doc/zh/inputs/tracing-propagator.md +++ b/internal/export/doc/zh/inputs/tracing-propagator.md @@ -1,4 +1,10 @@ -# 多链路中的信息传播机制及使用 +--- +title : 'Tracing Propagator' +summary : '多链路中的信息传播机制及使用' +tags : + - '链路追踪' +__int_icon: '' +--- 本篇文章的主要介绍的是多个链路厂商的产品,以及在分布式服务中多个语言或者多个产品之间如何实现 Trace 信息传播。 diff --git a/internal/export/doc/zh/inputs/windows_event.md b/internal/export/doc/zh/inputs/windows_event.md index a2943f70bd..17fc8ceb55 100644 --- a/internal/export/doc/zh/inputs/windows_event.md +++ b/internal/export/doc/zh/inputs/windows_event.md @@ -1,6 +1,8 @@ --- title : 'Windows 事件' summary : '采集 Windows 中的事件日志' +tags: + - 'WINDOWS' __int_icon : 'icon/winevent' dashboard : - desc : '暂无' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# Windows 事件 - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/zabbix_exporter.md b/internal/export/doc/zh/inputs/zabbix_exporter.md index d25fed70f7..bdb3363e9e 100644 --- a/internal/export/doc/zh/inputs/zabbix_exporter.md +++ b/internal/export/doc/zh/inputs/zabbix_exporter.md @@ -1,6 +1,8 @@ --- -title : 'Zabbix_export' +title : 'Zabbix 数据接入' summary : 'Zabbix realTime data 数据接入' +tags: + - '外部数据接入' __int_icon : 'icon/zabbix' dashboard : - desc : '暂无' @@ -10,12 +12,6 @@ monitor : path : '-' --- - -# Zabbix RealTime Exporter - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/inputs/zipkin.md b/internal/export/doc/zh/inputs/zipkin.md index a96e8c37be..5dca219e01 100644 --- a/internal/export/doc/zh/inputs/zipkin.md +++ b/internal/export/doc/zh/inputs/zipkin.md @@ -2,6 +2,9 @@ title : 'Zipkin' summary : 'Zipkin Tracing 数据接入' __int_icon : 'icon/zipkin' +tags : + - 'ZIPKIN' + - '链路追踪' dashboard : - desc : '暂无' path : '-' @@ -10,12 +13,6 @@ monitor : path : '-' --- - -# Zipkin - - ---- - {{.AvailableArchs}} --- diff --git a/internal/export/doc/zh/mkdocs-howto.md b/internal/export/doc/zh/mkdocs-howto.md index 244bf6bc86..43453174f6 100644 --- a/internal/export/doc/zh/mkdocs-howto.md +++ b/internal/export/doc/zh/mkdocs-howto.md @@ -145,7 +145,7 @@ === "B 情况下这么使用" 在 B 情况下 ... - + 具体用法,参见[这里](https://squidfunk.github.io/mkdocs-material/reference/content-tabs/){:target="_blank"} @@ -173,7 +173,7 @@ Kubernetes 中支持以环境变量的方式修改配置参数: ... - + ``` 如果要屏蔽多个相关检查,其格式如下(以空格分隔对应的检测项): @@ -182,11 +182,12 @@ ... - + ``` 注意事项: +- disable 了什么,下面就 enable 什么,保持对称 - 一定要记得在适当的位置,开启所有的检测项 - 如果不是误报,而是因为文档确实触犯了对应的规则,并且通过改写文档能够通过检测,那么就不要屏蔽检测项,勇敢的改正对应的文档 @@ -228,7 +229,7 @@ cspell 在检测单词(这里主要指英文单词,目前还不能检测中 ??? warning 所有的中英文混排,都需要遵循这个设定,不管是不是代码排版。 - + ### 404 链接检查 {#404-check} @@ -247,7 +248,7 @@ cspell 在检测单词(这里主要指英文单词,目前还不能检测中 - 带有无意义的多余空格,如 ` 请参见这个[非法链接]( https://invalid-link.com)` - 多余的 `#`,如 ` 请参见这个[非法链接](some.md#invalid-link/#)` - 如果普通文本中带有链接说明,需用代码字体来排版这个链接,不然会触发 404 误报。比如:`` 请将主机地址设置为 `http://localhost:8080` ``,文中的这个 localhost 链接用代码字体修饰后,就不会触发 404 误报了。 - + ## 更多阅读 {#more-reading} diff --git a/internal/export/non_input_docs.go b/internal/export/non_input_docs.go index 6cf440081d..e5dd2a1583 100644 --- a/internal/export/non_input_docs.go +++ b/internal/export/non_input_docs.go @@ -270,14 +270,14 @@ func envHTTPAPI() []*inputs.ENVInfo { ENVName: "ENV_HTTP_LISTEN", Type: doc.String, Default: "localhost:9529", - Desc: "The address can be modified so that the [DataKit interface](apis) can be called externally.", + Desc: "The address can be modified so that the [DataKit interface](apis.md) can be called externally.", DescZh: "可修改地址,使得外部可以调用 [Datakit 接口](apis.md)。", }, { ENVName: "ENV_HTTP_PUBLIC_APIS", Type: doc.List, - Desc: "[API list](apis) that allow external access, separated by English commas between multiple APIs. When DataKit is deployed on the public network, it is used to disable some APIs.", + Desc: "[API list](apis.md) that allow external access, separated by English commas between multiple APIs. When DataKit is deployed on the public network, it is used to disable some APIs.", DescZh: "允许外部访问的 Datakit [API 列表](apis.md),多个 API 之间以英文逗号分割。当 Datakit 部署在公网时,用来禁用部分 API。", }, @@ -421,7 +421,7 @@ func envSinker() []*inputs.ENVInfo { func envIO() []*inputs.ENVInfo { // nolint:lll infos := []*inputs.ENVInfo{ - {ENVName: "ENV_IO_FILTERS", Type: doc.JSON, Desc: "Add [row protocol filter](datakit-filter)", DescZh: "添加[行协议过滤器](datakit-filter.md)"}, + {ENVName: "ENV_IO_FILTERS", Type: doc.JSON, Desc: "Add [line protocol filter](datakit-filter.md)", DescZh: "添加[行协议过滤器](datakit-filter.md)"}, {ENVName: "ENV_IO_FLUSH_INTERVAL", Type: doc.TimeDuration, Default: "10s", Desc: "IO channel capacity [:octicons-tag-24: Version-1.22.0](changelog.md#cl-1.22.0)", DescZh: "IO 发送时间频率 [:octicons-tag-24: Version-1.22.0](changelog.md#cl-1.22.0)"}, {ENVName: "ENV_IO_FEED_CHAN_SIZE", Type: doc.Int, Default: "1", Desc: "IO transmission time frequency [:octicons-tag-24: Version-1.22.0](changelog.md#cl-1.22.0)", DescZh: "IO 发送队列长度 [:octicons-tag-24: Version-1.22.0](changelog.md#cl-1.22.0)"}, {ENVName: "ENV_IO_FLUSH_WORKERS", Type: doc.Int, Default: "`cpu_core * 2 + 1`", Desc: "IO flush workers [:octicons-tag-24: Version-1.5.9](changelog.md#cl-1.5.9)", DescZh: "IO 发送 worker 数 [:octicons-tag-24: Version-1.5.9](changelog.md#cl-1.5.9)"}, diff --git a/internal/plugins/inputs/rabbitmq/export.go b/internal/plugins/inputs/rabbitmq/export.go index 357f6fd662..aac38e5715 100644 --- a/internal/plugins/inputs/rabbitmq/export.go +++ b/internal/plugins/inputs/rabbitmq/export.go @@ -67,7 +67,7 @@ func (ipt *Input) Dashboard(lang inputs.I18n) map[string]string { "overview": "Overview", "introduction": "Introduction", "description": "Description", - "description_content": `The collector can take many metrics from the rabbitmq instance, such as the number of connections, the number of queues, the total number of messages, and other metrics, and collect the metrics to the observation cloud to help monitor and analyze various abnormal situations of rabbitmq.\n\nhttps://docs.guance.com/datakit/rabbitmq/`, + "description_content": `The collector can take many metrics from the rabbitmq instance, such as the number of connections, the number of queues, the total number of messages, and other metrics, and collect the metrics to the Guance Cloud to help monitor and analyze various abnormal situations of rabbitmq.\n\nhttps://docs.guance.com/datakit/rabbitmq/`, "message": "Message", "queue": "Queue", "node": "Node", diff --git a/internal/plugins/inputs/solr/export.go b/internal/plugins/inputs/solr/export.go index c5798f7ae8..42d63c8f06 100644 --- a/internal/plugins/inputs/solr/export.go +++ b/internal/plugins/inputs/solr/export.go @@ -32,7 +32,7 @@ func (ipt *Input) Dashboard(lang inputs.I18n) map[string]string { return map[string]string{ "introduction": "Introduction", "description": "Description", - "description_content": `The collector can take many metrics from the Solr instance, such as cache, request number and other metrics, and collect the metrics to the observation cloud to help monitor and analyze various abnormal situations of Solr.\n\nhttps://docs.guance.com/datakit/solr/`, + "description_content": `The collector can take many metrics from the Solr instance, such as cache, request number and other metrics, and collect the metrics to the Guance Cloud to help monitor and analyze various abnormal situations of Solr.\n\nhttps://docs.guance.com/datakit/solr/`, "metric": "Metric", "deleted_document_number": "Number of deleted documents", "document_number": "Number of documents", diff --git a/scripts/markdownlint.yml b/scripts/markdownlint.yml index f2ec46cb2f..56f54f7e65 100644 --- a/scripts/markdownlint.yml +++ b/scripts/markdownlint.yml @@ -17,9 +17,9 @@ extends: null MD001: true # MD002/first-heading-h1/first-header-h1 - First heading should be a top-level heading -MD002: +MD002: false # Heading level - level: 1 + # level: 1 # MD003/heading-style/header-style - Heading style MD003: