github.com/1aal/kubeblocks@v0.0.0-20231107070852-e1c03e598921/deploy/mysql/templates/_helpers.tpl (about) 1 {{/* 2 Expand the name of the chart. 3 */}} 4 {{- define "mysql.name" -}} 5 {{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }} 6 {{- end }} 7 8 {{/* 9 Create a default fully qualified app name. 10 We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec). 11 If release name contains chart name it will be used as a full name. 12 */}} 13 {{- define "mysql.fullname" -}} 14 {{- if .Values.fullnameOverride }} 15 {{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }} 16 {{- else }} 17 {{- $name := default .Chart.Name .Values.nameOverride }} 18 {{- if contains $name .Release.Name }} 19 {{- .Release.Name | trunc 63 | trimSuffix "-" }} 20 {{- else }} 21 {{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }} 22 {{- end }} 23 {{- end }} 24 {{- end }} 25 26 {{/* 27 Create chart name and version as used by the chart label. 28 */}} 29 {{- define "mysql.chart" -}} 30 {{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }} 31 {{- end }} 32 33 {{/* 34 Common labels 35 */}} 36 {{- define "mysql.labels" -}} 37 helm.sh/chart: {{ include "mysql.chart" . }} 38 {{ include "mysql.selectorLabels" . }} 39 {{- if .Chart.AppVersion }} 40 app.kubernetes.io/version: {{ .Chart.AppVersion | quote }} 41 {{- end }} 42 app.kubernetes.io/managed-by: {{ .Release.Service }} 43 {{- end }} 44 45 {{/* 46 Selector labels 47 */}} 48 {{- define "mysql.selectorLabels" -}} 49 app.kubernetes.io/name: {{ include "mysql.name" . }} 50 app.kubernetes.io/instance: {{ .Release.Name }} 51 {{- end }} 52 53 {{/* 54 Create the name of the service account to use 55 */}} 56 {{- define "mysql.serviceAccountName" -}} 57 {{- if .Values.serviceAccount.create }} 58 {{- default (include "mysql.fullname" .) .Values.serviceAccount.name }} 59 {{- else }} 60 {{- default "default" .Values.serviceAccount.name }} 61 {{- end }} 62 {{- end }} 63 64 {{/* 65 apecloud-otel config 66 */}} 67 {{- define "agamotto.config" -}} 68 extensions: 69 memory_ballast: 70 size_mib: 32 71 72 receivers: 73 apecloudmysql: 74 endpoint: ${env:ENDPOINT} 75 username: ${env:MYSQL_USER} 76 password: ${env:MYSQL_PASSWORD} 77 allow_native_passwords: true 78 database: 79 collection_interval: 15s 80 transport: tcp 81 filelog/error: 82 include: [/data/mysql/log/mysqld-error.log] 83 include_file_name: false 84 start_at: beginning 85 filelog/slow: 86 include: [/data/mysql/log/mysqld-slowquery.log] 87 include_file_name: false 88 start_at: beginning 89 90 processors: 91 memory_limiter: 92 limit_mib: 128 93 spike_limit_mib: 32 94 check_interval: 10s 95 96 exporters: 97 prometheus: 98 endpoint: 0.0.0.0:{{ .Values.metrics.service.port }} 99 send_timestamps: false 100 metric_expiration: 20s 101 enable_open_metrics: false 102 resource_to_telemetry_conversion: 103 enabled: true 104 apecloudfile/error: 105 path: /var/log/kubeblocks/${env:KB_NAMESPACE}_${env:DB_TYPE}_${env:KB_CLUSTER_NAME}/${env:KB_POD_NAME}/error.log 106 format: raw 107 rotation: 108 max_megabytes: 10 109 max_days: 3 110 max_backups: 1 111 localtime: true 112 apecloudfile/slow: 113 path: /var/log/kubeblocks/${env:KB_NAMESPACE}_${env:DB_TYPE}_${env:KB_CLUSTER_NAME}/${env:KB_POD_NAME}/slow.log 114 format: raw 115 rotation: 116 max_megabytes: 10 117 max_days: 3 118 max_backups: 1 119 localtime: true 120 121 service: 122 telemetry: 123 logs: 124 level: info 125 extensions: [ memory_ballast ] 126 pipelines: 127 metrics: 128 receivers: [ apecloudmysql ] 129 processors: [ memory_limiter ] 130 exporters: [ prometheus ] 131 logs/error: 132 receivers: [filelog/error] 133 exporters: [apecloudfile/error] 134 logs/slow: 135 receivers: [filelog/slow] 136 exporters: [apecloudfile/slow] 137 {{- end }} 138 139 {{/* 140 apecloud-otel config for proxy 141 */}} 142 {{- define "proxy-monitor.config" -}} 143 receivers: 144 prometheus: 145 config: 146 scrape_configs: 147 - job_name: 'agamotto' 148 scrape_interval: 15s 149 static_configs: 150 - targets: ['127.0.0.1:15100'] 151 service: 152 pipelines: 153 metrics: 154 receivers: [ apecloudmysql, prometheus ] 155 {{- end }}