日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

采集PostgreSQL查詢結(jié)果

更新時(shí)間:
重要

本文中含有需要您注意的重要提示信息,忽略該信息可能對(duì)您的業(yè)務(wù)造成影響,請(qǐng)務(wù)必仔細(xì)閱讀。

本文介紹如何通過(guò)日志服務(wù)控制臺(tái)創(chuàng)建Logtail采集配置來(lái)采集PostgreSQL查詢結(jié)果。

前提條件

  • 已在服務(wù)器上安裝Linux Logtail 0.16.0及以上版本或Windows Logtail 1.0.0.8及以上版本。具體操作,請(qǐng)參見安裝Logtail(Linux系統(tǒng))安裝Logtail(Windows系統(tǒng))

    重要

    請(qǐng)確保用于安裝Logtail的服務(wù)器可連接目標(biāo)數(shù)據(jù)庫(kù)。

  • 在PostgreSQL數(shù)據(jù)庫(kù)中,設(shè)置白名單為L(zhǎng)ogtail所在服務(wù)器的IP地址。

    例如RDS PostgreSQL數(shù)據(jù)庫(kù)的白名單設(shè)置,請(qǐng)參見設(shè)置白名單

原理

Logtail根據(jù)Logtail采集配置定期執(zhí)行指定的SELECT語(yǔ)句,將查詢結(jié)果作為數(shù)據(jù)上傳到日志服務(wù)。

Logtail獲取到查詢結(jié)果時(shí),會(huì)將結(jié)果中的CheckPoint字段保存到本地。當(dāng)下次執(zhí)行SELECT語(yǔ)句時(shí),會(huì)將上一次保存的CheckPoint帶入到SELECT語(yǔ)句中,以此實(shí)現(xiàn)增量數(shù)據(jù)采集。

重要

開啟CheckPoint時(shí),需要在SELECT語(yǔ)句中對(duì)CheckPoint字段進(jìn)行排序,否則會(huì)造成數(shù)據(jù)重復(fù)或其他問(wèn)題。

image

功能

  • 支持采集PostgreSQL數(shù)據(jù)庫(kù)的查詢結(jié)果。

  • 支持分頁(yè)設(shè)置。

  • 支持時(shí)區(qū)設(shè)置。

  • 支持超時(shí)設(shè)置。

  • 支持保存CheckPoint狀態(tài)。

  • 支持限制每次最大采集數(shù)量。

應(yīng)用場(chǎng)景

  • 根據(jù)數(shù)據(jù)中的自增ID或時(shí)間等標(biāo)識(shí)采集增量數(shù)據(jù)。

  • 根據(jù)篩選條件自定義同步。

操作步驟

  1. 登錄日志服務(wù)控制臺(tái)

  2. 接入數(shù)據(jù)區(qū)域,選擇自定義數(shù)據(jù)插件

  3. 選擇目標(biāo)Project和Logstore,單擊下一步
  4. 機(jī)器組配置頁(yè)面,配置機(jī)器組。

    1. 根據(jù)實(shí)際需求,選擇使用場(chǎng)景和安裝環(huán)境。

      重要

      無(wú)論是否已有機(jī)器組,都必須根據(jù)實(shí)際需求正確選擇使用場(chǎng)景和安裝環(huán)境,這將影響后續(xù)的頁(yè)面配置。

    2. 確認(rèn)目標(biāo)機(jī)器組已在應(yīng)用機(jī)器組區(qū)域,單擊下一步

      已有機(jī)器組

      源機(jī)器組列表選擇目標(biāo)機(jī)器組。

      image

      沒(méi)有可用機(jī)器組

      單擊創(chuàng)建機(jī)器組,在創(chuàng)建機(jī)器組面板設(shè)置相關(guān)參數(shù)。機(jī)器組標(biāo)識(shí)分為IP地址用戶自定義標(biāo)識(shí),更多信息請(qǐng)參見創(chuàng)建用戶自定義標(biāo)識(shí)機(jī)器組(推薦)創(chuàng)建IP地址機(jī)器組

      重要

      創(chuàng)建機(jī)器組后立刻應(yīng)用,可能因?yàn)檫B接未生效,導(dǎo)致心跳為FAIL,您可單擊重試。如果還未解決,請(qǐng)參見Logtail機(jī)器組無(wú)心跳進(jìn)行排查。

  5. 數(shù)據(jù)源設(shè)置頁(yè)簽中,設(shè)置配置名稱插件配置,單擊下一步

    • inputs為數(shù)據(jù)源配置,必選項(xiàng)。

      重要

      一個(gè)inputs中只允許配置一個(gè)類型的數(shù)據(jù)源。

    • processors為處理配置,用于解析數(shù)據(jù)。可選項(xiàng),您可以配置一種或多種處理方式。

      如果當(dāng)前的inputs配置無(wú)法滿足日志解析需求,您可以在插件配置中添加processors配置,即添加Logtail插件處理數(shù)據(jù)。例如提取字段、提取日志時(shí)間、脫敏數(shù)據(jù)、過(guò)濾日志等。更多信息,請(qǐng)參見使用Logtail插件處理數(shù)據(jù)

    {
      "inputs": [
        {
          "type": "service_pgsql",
          "detail": {
            "Address": "pgm-****.pg.rds.aliyuncs.com",
            "User": "****",
            "Password": "*******",
            "DataBase": "****",
            "Limit": true,
            "PageSize": 100,
            "StateMent": "select * from specialalarmtest where id > $1 order by id",
            "CheckPoint": true,
            "CheckPointColumn": "id",
            "CheckPointStart": "0",
            "CheckPointSavePerPage": true,
            "CheckPointColumnType": "int",
            "IntervalMs": 1000
          }
        }
      ]
    }

    參數(shù)

    類型

    是否必選

    說(shuō)明

    type

    string

    數(shù)據(jù)源類型,固定為service_pgsql

    Address

    string

    PostgreSQL地址。例如pgm-****.pg.rds.aliyuncs.com

    不配置時(shí),默認(rèn)使用127.0.0.1:5432

    User

    string

    用于登錄PostgreSQL數(shù)據(jù)庫(kù)的賬號(hào)名稱。

    不配置時(shí),默認(rèn)使用root

    Password

    string

    用于登錄PostgreSQL數(shù)據(jù)庫(kù)的賬號(hào)密碼。不配置時(shí),默認(rèn)為空。

    如果安全需求較高,建議將用戶名和密碼配置為xxx,待采集配置同步至本地機(jī)器后,在本地文件/usr/local/ilogtail/user_log_config.json找到對(duì)應(yīng)配置進(jìn)行修改。具體操作,請(qǐng)參見修改本地配置

    重要

    如果您在控制臺(tái)上修改了此參數(shù),同步至本地后會(huì)覆蓋當(dāng)前本地的配置。

    DataBase

    string

    PostgreSQL數(shù)據(jù)庫(kù)名稱。

    DialTimeOutMs

    int

    連接PostgreSQL數(shù)據(jù)庫(kù)超時(shí)時(shí)間,單位:ms。

    不配置時(shí),默認(rèn)使用5000 ms。

    ReadTimeOutMs

    int

    讀取PostgreSQL查詢結(jié)果的超時(shí)時(shí)間,單位:ms。

    不配置時(shí),默認(rèn)使用5000 ms。

    StateMent

    string

    SELECT語(yǔ)句。

    設(shè)置CheckPointtrue時(shí),StateMent中SELECT語(yǔ)句的where條件中必須包含CheckPoint列(CheckPointColumn參數(shù)),并將該列的值設(shè)置為$1。例如:設(shè)置CheckPointColumnid,設(shè)置StateMentSELECT * from ... where id > $1

    Limit

    boolean

    是否使用Limit分頁(yè)。

    不配置時(shí),默認(rèn)使用false,表示不使用Limit分頁(yè)。

    建議使用Limit進(jìn)行分頁(yè)。設(shè)置Limittrue后,進(jìn)行SQL查詢時(shí),會(huì)自動(dòng)在StateMent中追加LIMIT語(yǔ)句。

    PageSize

    int

    分頁(yè)大小,Limittrue時(shí)必須配置。

    MaxSyncSize

    int

    每次同步最大記錄數(shù)。

    不配置時(shí),默認(rèn)使用0,表示無(wú)限制。

    CheckPoint

    boolean

    是否使用CheckPoint。

    不配置時(shí),默認(rèn)使用false,表示不使用CheckPoint。

    CheckPointColumn

    string

    CheckPoint列名稱。

    CheckPointtrue時(shí)必須配置。

    警告

    該列的值必須遞增,否則可能會(huì)出現(xiàn)數(shù)據(jù)漏采集問(wèn)題(每次查詢結(jié)果中的最大值將作為下次查詢的輸入)。

    CheckPointColumnType

    string

    CheckPoint列的數(shù)據(jù)類型,支持int和time。int類型的內(nèi)部存儲(chǔ)為int64,time類型支持PostgreSQL的時(shí)間類型。

    CheckPointtrue時(shí)必須配置。

    CheckPointStart

    string

    CheckPoint列的初始值。

    CheckPointtrue時(shí)必須配置。

    CheckPointSavePerPage

    boolean

    是否每次分頁(yè)時(shí)保存一次CheckPoint。

    • true:每次分頁(yè)時(shí)保存一次CheckPoint。

    • false:每次同步完成后保存一次CheckPoint。

    IntervalMs

    int

    同步間隔,單位:ms。

  6. 創(chuàng)建索引預(yù)覽數(shù)據(jù),然后單擊下一步。日志服務(wù)默認(rèn)開啟全文索引。您也可以根據(jù)采集到的日志,手動(dòng)創(chuàng)建字段索引,或者單擊自動(dòng)生成索引,日志服務(wù)將自動(dòng)生成字段索引。更多信息,請(qǐng)參見創(chuàng)建索引

    重要

    如果需要查詢?nèi)罩局械乃凶侄危ㄗh使用全文索引。如果只需查詢部分字段、建議使用字段索引,減少索引流量。如果需要對(duì)字段進(jìn)行分析(SELECT語(yǔ)句),必須創(chuàng)建字段索引。

  7. 單擊查詢?nèi)罩?/b>,系統(tǒng)將跳轉(zhuǎn)至Logstore查詢分析頁(yè)面。
    您需要等待1分鐘左右,待索引生效后,才能在原始日志頁(yè)簽中,查看已采集到的日志。更多信息,請(qǐng)參見查詢和分析日志

修改本地配置

如果您沒(méi)有在插件配置中輸入真實(shí)的Address、User、Password等信息,可以在采集配置下發(fā)到本地后進(jìn)行手動(dòng)修改。

Linux系統(tǒng)

  1. 登錄Logtail所在服務(wù)器。

  2. 打開/usr/local/ilogtail/user_log_config.json文件,找到service_pgsql關(guān)鍵字,修改AddressUserPassword等字段。

  3. 執(zhí)行以下命令重啟Logtail。

    sudo /etc/init.d/ilogtaild stop; sudo /etc/init.d/ilogtaild start

Windows系統(tǒng)

  1. 登錄Logtail所在服務(wù)器。

  2. 打開C:\Program Files\Alibaba\Logtail\user_log_config.json文件,找到service_pgsql關(guān)鍵字,修改AddressUserPassword等字段。

    Windows 64位操作系統(tǒng)和Windows 32位操作系統(tǒng)文件位置不同,具體請(qǐng)參見文件路徑

  3. 執(zhí)行以下命令重啟Logtail。

    1. 選擇開始 > 控制面板 > 管理工具 > 服務(wù)

    2. 服務(wù)對(duì)話框中,選擇對(duì)應(yīng)的服務(wù)。

      • 如果是0.x.x.x版本,選擇LogtailWorker服務(wù)。

      • 如果是1.0.0.0及以上版本,選擇LogtailDaemon服務(wù)。

    3. 右鍵選擇對(duì)應(yīng)的操作,包括啟動(dòng)停止重新啟動(dòng)

問(wèn)題排查

使用Logtail采集日志后,如果預(yù)覽頁(yè)面或查詢頁(yè)面無(wú)數(shù)據(jù),您可以參見Logtail采集日志失敗的排查思路進(jìn)行排查。

數(shù)據(jù)庫(kù)表和日志樣例

PostgreSQL數(shù)據(jù)庫(kù)表結(jié)構(gòu)樣例和Logtail采集到的日志樣例如下所示。

  • 表結(jié)構(gòu)樣例

    //創(chuàng)建表。
    CREATE TABLE IF NOT EXISTS specialalarmtest (
        id BIGSERIAL NOT NULL,
        time TIMESTAMP NOT NULL,
        alarmtype varchar(64) NOT NULL,
        ip varchar(16) NOT NULL,
        COUNT INT NOT NULL,
        PRIMARY KEY (id)
    );
    
    //插入數(shù)據(jù)。
    insert into specialalarmtest (time, alarmtype, ip, count) values(now(), 'NO_ALARM', '10.10.***.***', 0);
    insert into specialalarmtest (time, alarmtype, ip, count) values(now(), 'NO_ALARM', '10.10.***.***', 1);
    insert into specialalarmtest (time, alarmtype, ip, count) values(now(), 'NO_ALARM', '10.10.***.***', 2);
    insert into specialalarmtest (time, alarmtype, ip, count) values(now(), 'NO_ALARM', '10.10.***.***', 3);
                            
  • 日志樣例 日志樣例