Grafana 6.0 이상 버전에는 Grafana Loki에 대한 지원이 내장되어 있습니다.
* LogQL 기능을 활용 하려면 Grafana 6.3 또는 최신 버전을 사용하십시오 .
Grafana 인스턴스에 로그인합니다. Grafana를 처음 실행하는 경우 사용자 이름과 암호는 모두 기본적으로 admin.
Grafana 에서 왼쪽 사이드바에 있는 톱니바퀴 아이콘을 통해 Configuration> 로 이동합니다.Data Sources
큰 + Add data source버튼을 클릭합니다.
목록에서 Loki를 선택합니다.
http URL 필드는 Loki 서버의 주소여야 합니다. 예를 들어 로컬로 실행하거나 포트 매핑을 사용하는 Docker와 함께 실행하는 경우 주소는 http://localhost:3100. docker-compose 또는 Kubernetes로 실행할 때 주소는 http://loki:3100.
로그를 보려면 Explore사이드바를 클릭하고 왼쪽 상단 드롭다운에서 Loki 데이터 소스를 선택한 다음 Log labels버튼을 사용하여 로그 스트림을 선택합니다.
Loki의 쿼리 언어 LogQL 에 대해 읽고 쿼리에 대해 자세히 알아보세요 .
Grafana 문서 에서 Grafana의 탐색 기능 과 Loki를 사용하여 로그를 검색하고 필터링하는 방법에 대해 자세히 알아보세요.
프로비저닝을 통해 Loki를 데이터 소스로 구성하려면 프로비저닝을 통해 Grafana 구성 을 참조하십시오 . 프로비저닝에서 URL을 설정하십시오.
[참조]
## promtail 설치 및 시작
https://sbcode.net/grafana/install-promtail-service/
## grafana 홈페이지
https://grafana.com/docs/loki/latest/installation/local/
## Loki Github
https://github.com/grafana/loki/releases/
## 리눅스
- 리눅스 서버에 loki 설정
/loki 디렉토리 생성후 그 디렉토리에서 수행
wget https://raw.githubusercontent.com/grafana/loki/v2.6.1/cmd/loki/loki-local-config.yaml -O loki-config.yaml
docker run --name loki -d -v $(pwd):/mnt/config -p 3100:3100 grafana/loki:2.6.1 -config.file=/mnt/config/loki-config.yaml
wget https://raw.githubusercontent.com/grafana/loki/v2.6.1/clients/cmd/promtail/promtail-docker-config.yaml -O promtail-config.yaml
docker run --name promtail -d -v $(pwd):/mnt/config -v /var/log:/var/log --link loki grafana/promtail:2.6.1 -config.file=/mnt/config/promtail-config.yaml
완료되면 loki-config.yaml선택한 promtail-config.yaml디렉토리에 다운로드됩니다. Docker 컨테이너는 해당 구성 파일을 사용하여 Loki 및 Promtail을 실행합니다.
http://localhost:3100/metrics로 이동하여 메트릭을 확인하고 http://localhost:3100/ready로 이동하여 준비 상태를 확인합니다.
10001이미지는 기본적으로 UID 및 GID 가 있는 사용자 loki로 실행되도록 구성됩니다 10001. docker run특히 바인드 마운트를 사용하는 경우 명령 으로 UID를 지정하고 --user=UID필요에 맞는 숫자 UID와 함께 사용하여 다른 사용자를 사용할 수 있습니다 .
2. 바이너리로 설치
[참고]
https://sbcode.net/grafana/install-loki-service/
(실제 구축 사례)
- loki는 아래와 같이 docker로 띄움
wget https://raw.githubusercontent.com/grafana/loki/v2.6.1/cmd/loki/loki-local-config.yaml -O loki-config.yaml docker run --name loki -d -v $(pwd):/mnt/config -p 3100:3100 grafana/loki:2.6.1 -config.file=/mnt/config/loki-config.yaml
### Promtail 설치 및 기동
Promtail은 클라이언트 에이전트로 데이터를 loki로 보내는 기능을 수행한다
https://sbcode.net/grafana/install-promtail-service/
(실제 구축 사례)
promtail 홈디렉토리에서 ./start.sh 기동
start.sh 내용
./promtail-linux-amd64 -config.file config-promtail.yml&
# 다른서버에서 mysql error파일 조회하기
[promtail@gprtdbdq ~]$ cat config-promtail.yml
server:
http_listen_port: 9080
grpc_listen_port: 9097
positions:
filename: /tmp/positions.yaml
clients:
- url: http://10.65.10.40:3100/loki/api/v1/push
scrape_configs:
- job_name: system
static_configs:
- targets:
- localhost
labels:
job: mysqllog
__path__: /logs/mariaqa/*.err
host: gprtdbdq
[참고] docker 로그보기(10줄)
docker logs --tail 10 <CONTAINER>