Grafana는 사용자가 복잡한 데이터를 대시보드에 쉽게 표시할 수 있는 인기 있는 오픈 소스 데이터 시각화 플랫폼입니다. 그리고 PHP는 동적 웹 애플리케이션 개발에 널리 사용되는 스크립팅 언어입니다. 이번 글에서는 PHP를 이용하여 Grafana 데이터 시각화 플랫폼을 구현하는 방법을 소개하겠습니다.
1. Grafana 설치
먼저 Grafana 서버를 설치해야 합니다. 귀하의 운영 체제에 적합한 바이너리는 Grafana 공식 웹사이트에서 다운로드하실 수 있습니다. 설치 과정은 매우 간단합니다. 지시 사항을 따르기만 하면 완료됩니다.
2. 데이터 소스 만들기
Grafana에서 데이터 소스는 외부 데이터 소스에 연결하는 구성입니다. 예를 들어 시계열 데이터베이스(예: InfluxDB) 또는 API 엔드포인트에 연결하여 데이터를 검색할 수 있습니다. 여기서는 InfluxDB를 데이터 소스로 사용합니다.
Grafana에서 데이터 소스를 생성하려면 Grafana 웹 인터페이스를 열고 로그인하세요. 다음으로 구성 메뉴에서 데이터 소스 옵션으로 이동합니다. 그런 다음 "데이터 소스 추가" 버튼을 클릭하고 유형으로 "influxdb"를 선택한 후 데이터베이스 이름, 사용자 이름, 비밀번호 등 적절한 세부 정보를 입력합니다.
3. 패널 및 표시기 만들기
Grafana에서 패널은 시각적 구성 요소(예: 그래프, 표, 측정 표시기)가 배치되는 영역입니다. 측정항목은 소스 데이터의 측정 지점입니다.
Grafana에서 패널과 측정항목을 만들려면 Grafana 웹 인터페이스를 열고 로그인하세요. 그런 다음 새 패널을 클릭하고 이름을 선택합니다. 그런 다음 쿼리 추가 버튼을 클릭하여 쿼리 편집기를 엽니다.
쿼리 편집기에서 쿼리 문을 입력하여 데이터를 검색하세요. 예를 들어, 다음은 특정 레이블이 있는 InfluxDB 측정항목을 검색하는 샘플 쿼리입니다.
SELECT 평균("값") FROM "온도" WHERE ("location" = 'room1') AND $timeFilter GROUP BY time($__interval) fill(null)
필요에 따라 온도, 습도, 압력 등 라벨을 직접 추가할 수 있습니다.
4. PHP를 사용한 Grafana 확장
이제 구성된 Grafana 서버를 만들고 관심 있는 측정항목과 패널을 정의했습니다. 다음으로 PHP를 사용하여 Grafana의 기능을 확장하겠습니다.
PHP를 사용하여 Grafana 플러그인을 작성하려면 다음 단계를 따르세요.
다음은 간단한 플러그인 샘플 코드입니다:
require_once('/path/to/Grafana/src/grafana.php');
$grafana = new Grafana();
$dashboard = $grafana->dashboard('TestDashboard');
$dashboard->addPanel('TestPanel', 1, 1)
->setPanelType('graph') ->setQuery('SELECT mean("value") FROM "temperature" WHERE ("location" = 'room1') AND $timeFilter GROUP BY time($__interval) fill(null)') ->setVisualization('graph');
$grafana->register($dashboard);
? >
이 코드는 "TestDashboard"라는 Grafana 대시보드를 생성하고 해당 패널 위에 "TestPanel"이라는 패널을 생성합니다. 그런 다음 "그래프"라는 쿼리를 정의합니다.
마지막으로 코드는 "register()" 메서드를 호출하여 대시보드를 Grafana에 등록합니다.
5. 요약
이 글에서는 PHP를 사용하여 Grafana의 기능을 확장하는 방법을 소개했습니다. 먼저 Grafana 서버를 설치한 다음 관심 있는 지표와 패널을 정의했습니다. 마지막으로 Grafana 기능을 확장하고 여기에 새로운 패널과 쿼리를 추가하는 PHP 코드를 작성했습니다. 이러한 단계를 통해 우리는 Grafana를 우리에게 필요한 유연한 데이터 시각화 플랫폼으로 구축할 수 있습니다.
위 내용은 PHP는 오픈 소스 Grafana 데이터 시각화 플랫폼을 구현합니다.의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!