ソースを参照

ft: 代码调整

master
SisMaker 3年前
コミット
26a2f1a332
4個のファイルの変更225行の追加318行の削除
  1. +71
    -161
      src/agApi/agAdminMonitor.erl
  2. +1
    -2
      src/agApi/agAnalyzers.erl
  3. +151
    -151
      src/agApi/agReplication.erl
  4. +2
    -4
      src/agApi/agTransactions.erl

+ 71
- 161
src/agApi/agAdminMonitor.erl ファイルの表示

@ -7,37 +7,36 @@
% doc_address:https://www.arangodb.com/docs/stable/http/administration-and-monitoring.html
% Permalink读取全局日
%
% GET /_admin/log
%
%
% GET /_admin/log/entries
%
% upto upto必须为
% fatal 0
% error或1
% warning或2
% info或3
% debug 4 info
% level upto和level是互斥的
% start使lid值start
% size
% offset
% search search中指定的文本的日志条目
% sortsort为ascsort为desc asc
% JSON对象
% HTTP 200
% lid@LIT {lid}
% level
% timestamp1970-01-01
% text
% topic
% totalAmount
% 400up或level指定了无效值
% 500
% uptoupto
% 0
% 1
% 2
% 3
% debug 4 info
% levellevel upto和level是互斥的
% start使lid值start
% size
% offset
% searchsearch
% sortid值对日志条目进行升序sort是ascsort是descid asc
% serverId serverId Coordinator
% JSON
% total :
% messages :
% API --log.api-enabled API 使 HTTP 403 API 访--log.api-enabled启动选项的值
%
% 200
% 400upto或level指定了无效值
% 403访
getAdminLog(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_admin/log">>).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_admin/log/entries">>).
getAdminLog(PoolNameOrSocket, QueryPars) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_admin/log">>, QueryPars).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_admin/log/entries">>, QueryPars).
%
% GET /_admin/log/level
@ -107,114 +106,9 @@ getAdminLogLevel(PoolNameOrSocket) ->
% 405使HTTP方法时返回
% 500
modifyAdminLogLevel(PoolNameOrSocket, MapData) ->
BodyStr = eVPack:encodeBin(MapData),
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_admin/log/level">>, ?AgDefQuery, ?AgDefHeader, BodyStr).
%
% GET /_admin/statistics
% _admin / statistics-description返回的描述分组在一起的 访userTimeuserTime的值存储在同名属性中
% count为单位的总计 counts为单位的分发列表
% RocksDB存储引擎DBServer在事务提交到群集范围之前完成使
% HTTP 200
% errorfalse
% codeHTTP状态码-200
% time
% errorMessage
% enabledtrue
%
% minorPageFaultspagefaults
% majorPageFaultspagefaults
% userTime使CPU时间
% systemTime使CPU时间
% numberOfThreads线
% residentSizeRSS
% residentSizePercentRSS
% virtualSizeVSS
% client使
% sum
% count
% counts
% connectionTime
% totalTime
% requestTime
% queueTime
% ioTimeIO时间
% bytesSent
% bytesReceived
% httpConnectionshttp连接数
% http
% requestsTotalhttp请求总数
% requestsAsynchttp请求的总数
% RequestsGet使GET动词的请求数
% requestHead使HEAD动词的请求数
% requestPost使POST动词的请求数
% requestsPut使PUT动词的请求数
% requestsPatch使PATCH动词的请求数
% requestsDelete使DELETE动词的请求数
% requestsOptions使OPTIONS动词的请求数
% requestOther使
%
%
% physicalMemory
% Transactions
%
%
%
% middleCommits
% v8ContextV8 JavaScript上下文的统计信息
% V8上下文的数量
% busyV8上下文的数量
% dirty使使
% free使V8上下文的数量
% max--javascript.v8-contexts配置生成的V8上下文总数
% V8内存/使/10
% contextIdID
% tMax10
% countOfTimes10
% heapMax10
% heapMin10
% 线线V8或jemalloc的线程和系统线程
% scheduler-threads线
% 线
% 线
getAdminProps(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_admin/statistics">>).
%
%
% GET /_admin/statistics-description
% / _admin / statistics返回的统计信息的描述
%
% group
% name
% description
%
% group
%
% name
% description
%
% cuts
%
% HTTP 200
%
% group
% name
% description
%
% group
%
% name
% description
%
% cuts
%
% codeHTTP状态码
% false
getAdminStatisticsDesc(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_admin/statistics-description">>).
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_admin/log/level">>, ?AgDefQuery, ?AgDefHeader, eVPack:encodeBin(MapData)).
% TLS
% TLS
% TLS数据的摘要
% TLS数据CA
% GET /_admin/server/tls
@ -233,7 +127,7 @@ getAdminStatisticsDesc(PoolNameOrSocket) ->
getAdminTLS(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_admin/server/tls">>).
% TLS数据的重新加载并返回摘要永久链接
% TLS数据的重新加载并返回摘要
% TLS数据CA
% POST /_admin/server/tls
% API调用触发所有TLS数据的重新加载JSON响应与相应的GET请求完全相同
@ -244,17 +138,22 @@ getAdminTLS(PoolNameOrSocket) ->
triggerAdminTLS(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgPost, <<"/_admin/server/tls">>).
% IMY-todo json也不是vpack
% GET /_admin/metrics
% Prometheus格式返回实例的当前指标Prometheus收集
% 使arangodb_或rocksdb_字符串发布
% API添加到Prometheus配置文件中进行收集
%
% 200
% 404使--server.export-metrics-api false API API
getAdminMetrics(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_admin/metrics">>).
%
%
%
% POST /_admin/server/encryption
% --rocksdb.encryption-keyfolder 使
% API API
% API HTTP 404
% HTTP 200 API HTTP 200
% error : false
% HTTP - 200
%
% SHA-256
% 403 API HTTP 403 FORBIDDEN
% 404 API HTTP 404
encryption(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgPost, <<"/_admin/server/encryption">>).
%
%
@ -267,6 +166,19 @@ getAdminMetrics(PoolNameOrSocket) ->
getAdminServerMode(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_admin/server/mode">>).
%
%
% PUT /_admin/server/mode
% JSON
% readonly或default
% json mode值为readonlyor的字段default1004( ERROR_READ_ONLY )11( ERROR_FORBIDDEN )
% API
%
% 200 API HTTP 200
% 401
setAdminServerMode(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_admin/server/mode">>).
% ID
% ID
% GET /_admin/server/id
@ -279,22 +191,21 @@ getAdminServerId(PoolNameOrSocket) ->
%
% GET /_admin/server/role
% role属性中返回
% SINGLE
%
% PRIMARYDBServer
% 使
%
% UNDEFINEDUNDEFINED
% HTTP 200
%
% codeHTTP状态码200
% errorNum
%
% SINGLE
% COORDINATOR
% PRIMARY
% SECONDARY使
% AGENT
% UNDEFINEDUNDEFINED
% HTTP 200
%
% code : HTTP 200
% errorNum :
% [ SINGLEPRIMARYSECONDARYAGENTUNDEFINED ]
getAdminServerRole(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_admin/server/role">>).
%
% GET /_admin/server/availability
%
@ -314,9 +225,8 @@ getAdminServerAvailability(PoolNameOrSocket) ->
% 200
% 400ID
% 403
getAdminClusterProps(PoolNameOrSocket, DBserver) ->
Path = <<"/_admin/clusterStatistics?DBserver=", (agMiscUtils:toBinary(DBserver))/binary>>,
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, Path).
getAdminClusterProps(PoolNameOrSocket, QueryPars) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_admin/clusterStatistics">>, QueryPars). XXXXXX
% Permalink
%

+ 1
- 2
src/agApi/agAnalyzers.erl ファイルの表示

@ -25,8 +25,7 @@
% 400
% 403使
newAnalyzer(PoolNameOrSocket, MapData) ->
BodyStr = eVPack:encodeBin(MapData),
agVstCli:callAgency(PoolNameOrSocket, ?AgPost, <<"/_api/analyzer">>, ?AgDefQuery, ?AgDefHeader, BodyStr).
agVstCli:callAgency(PoolNameOrSocket, ?AgPost, <<"/_api/analyzer">>, ?AgDefQuery, ?AgDefHeader, eVPack:encodeBin(MapData)).
%
% GET /_api/analyzer/{analyzer-name}

+ 151
- 151
src/agApi/agReplication.erl ファイルの表示

@ -24,56 +24,62 @@
%
% GET /_api/replication/inventory
%
% includeSystemtrue
% global _system默认值为false
% batchIdAPI调用的RocksDB引擎需要有效的batchId
% 使
% collection和state和 tick属性的JSON对象
%
% parameters
% indexes
% includeSystemtrue
% global_system默认值为false
% batchId API batchId
% collection
%
% 使 global未设置collection参数将响应限制为单个集合
% collectionsviewsstate和 tick属性的 JSON
% collections是具有以下子属性的集合数组
% parameters
% indexes
%
% runningArangoDB 2.2true
% lastLogTick
% time
% lastLogTick值使lastLogTick的值
% running ArangoDB 2.2 true
% lastLogTick
% time :
% views是一组可用的视图
% lastLogTick值使 dump lastLogTick
%
% / inventory API方法lastLogTick值以及集合和索引的数组
% / inventory返回的每个集合/ dump将集合数据流式传输到客户端lastLogTick的值 / inventory报告的集合上创建索引
%
% / logger-follow来获取在客户端调用/ inventory之后记录的第一批复制事件
% / logger-follow的调用应使用from参数/ inventory报告的lastLogTick的值 / logger-follow将返回 x-arango-replication-lastincluded
% / logger-follow以递增地获取上次传输后发生的新复制事件
% 使from参数 x-arango-replication-lastincluded头的值
% DBserver DBserver的IDDBserver
% global顶层对象使用参数包含一个键databases datbase名称
%
% 200
% 405使HTTP方法时返回
% 500500
% /inventory API lastLogTick值以及来自服务器的集合和索引数组
% /inventory返回的每个集合/dump将集合数据流式传输到客户端lastLogTick的值 /inventory报告的集合上创建索引
%
% /logger-follow以获取在客户端调用/inventory后记录的第一批复制事件
% /logger-follow的调用应该使用from参数和/inventory报告的lastLogTick的值 /logger-follow的调用将返回 x-arango-replication-lastincluded
% /logger-follow以增量获取上次传输后发生的新复制事件
% 使 x-arango-replication-lastincluded标头值的from参数
% Coordinator DBserver DB-Server ID DB-Server Coordinator
% 使global参数key databases key下代表一个数据库名
%
% 200
% 405使HTTP方法时返回
% 500
% API RocksDB 使 batchId
getRepInventory(PoolNameOrSocket, QueryPars) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/inventory">>, QueryPars).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/inventory">>, QueryPars).
%
%
%
% POST /_api/replication/batch
%
% JSON对象是必需的
% ttl
% JSON对象
% ID
% JSON对象
% idID
% DBserver DB-Server的IDDB服务器Coordinator情况下未绑定此属性
%
% 200
% 400ttl值无效Coordinator上未指定DBserver属性或该属性非法400
% 405使HTTP方法时返回
%
%
% statestate为 true 使state有关领导者状态信息的属性使使
% JSON
% ttl
% JSON
% ID
% JSON
% id : id
% lastTick : 使
% state : stateURL true
% Coordinator DBserver DB-Server ID DB-Server Coordinator
%
% 200
% 400 ttl DBserver属性或协调器上的DBserver属性不合法
% 405使HTTP方法时返回
newRepBatch(PoolNameOrSocket, MapData) ->
BodyStr = eVPack:encodeBin(MapData),
agVstCli:callAgency(PoolNameOrSocket, ?AgPost, <<"/_api/replication/batch">>, ?AgDefQuery, ?AgDefHeader, BodyStr).
agVstCli:callAgency(PoolNameOrSocket, ?AgPost, <<"/_api/replication/batch">>, ?AgDefQuery, ?AgDefHeader, eVPack:encodeBin(MapData)).
%
%
%
% DELETE /_api/replication/batch/{id}
%
@ -86,11 +92,10 @@ newRepBatch(PoolNameOrSocket, MapData) ->
% 400
% 405使HTTP方法时返回
delRepBatch(PoolNameOrSocket, BatchId) ->
Path = <<"/_api/replication/batch/", (agMiscUtils:toBinary(BatchId))/binary>>,
agVstCli:callAgency(PoolNameOrSocket, ?AgDelete, Path).
Path = <<"/_api/replication/batch/", (agMiscUtils:toBinary(BatchId))/binary>>,
agVstCli:callAgency(PoolNameOrSocket, ?AgDelete, Path).
%
%
%
% PUT /_api/replication/batch/{id}
%
%
@ -108,9 +113,8 @@ delRepBatch(PoolNameOrSocket, BatchId) ->
% dump方法将仅返回文档
% 使
prolongRepBatch(PoolNameOrSocket, BatchId, MapData) ->
Path = <<"/_api/replication/batch/", (agMiscUtils:toBinary(BatchId))/binary>>,
BodyStr = eVPack:encodeBin(MapData),
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, Path, ?AgDefQuery, ?AgDefHeader, BodyStr).
Path = <<"/_api/replication/batch/", (agMiscUtils:toBinary(BatchId))/binary>>,
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, Path, ?AgDefQuery, ?AgDefHeader, eVPack:encodeBin(MapData)).
%
%
@ -140,7 +144,7 @@ prolongRepBatch(PoolNameOrSocket, BatchId, MapData) ->
% 405使HTTP方法时返回
% 500500
getRepDump(PoolNameOrSocket, QueryPars) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/dump">>, QueryPars).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/dump">>, QueryPars).
% Merkle树以进行收集
% Merkle树
@ -176,7 +180,7 @@ getRepDump(PoolNameOrSocket, QueryPars) ->
% 500500
% 501使mmfiles调用或在不支持按版本同步的集合上返回
getRepTree(PoolNameOrSocket, QueryPars) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/revisions/tree">>, QueryPars).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/revisions/tree">>, QueryPars).
% Merkle树
% Merkle树
@ -194,7 +198,7 @@ getRepTree(PoolNameOrSocket, QueryPars) ->
% 500500
% 501使mmfiles调用或在不支持按版本同步的集合上返回
resetRepTree(PoolNameOrSocket, QueryPars) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgPost, <<"/_api/replication/revisions/tree">>, QueryPars).
agVstCli:callAgency(PoolNameOrSocket, ?AgPost, <<"/_api/replication/revisions/tree">>, QueryPars).
% ID
% ID
@ -205,7 +209,7 @@ resetRepTree(PoolNameOrSocket, QueryPars) ->
% batchId使ID
% resume
getRepRanges(PoolNameOrSocket, QueryPars) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/revisions/ranges">>, QueryPars).
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/revisions/ranges">>, QueryPars).
%
%
@ -234,7 +238,7 @@ getRepRanges(PoolNameOrSocket, QueryPars) ->
% 500500
% 501使mmfiles调用或在不支持按版本同步的集合上返回
getRepDoc(PoolNameOrSocket, QueryPars) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/revisions/documents">>, QueryPars).
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/revisions/documents">>, QueryPars).
%
%
@ -265,8 +269,7 @@ getRepDoc(PoolNameOrSocket, QueryPars) ->
% 500
% 501
startRepSync(PoolNameOrSocket, MapData) ->
BodyStr = eVPack:encodeBin(MapData),
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/sync">>, ?AgDefQuery, ?AgDefHeader, BodyStr).
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/sync">>, ?AgDefQuery, ?AgDefHeader, eVPack:encodeBin(MapData)).
%
%
@ -280,7 +283,7 @@ startRepSync(PoolNameOrSocket, MapData) ->
% 405使HTTP方法时返回
% 500500
getRepClusterInv(PoolNameOrSocket, QueryPars) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/clusterInventory">>, QueryPars).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/clusterInventory">>, QueryPars).
%
% ArangoDB允许启动ArangoDB 2.2
@ -309,16 +312,16 @@ getRepClusterInv(PoolNameOrSocket, QueryPars) ->
% 405使HTTP方法时返回
% 500
getRepLoggerState(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/logger-state">>).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/logger-state">>).
%
%
%
% GET /_api/replication/logger-follow
% 使3.4.0
%
% from
%
% to
% chunkSize
% includeSystemtrue
% 使
@ -364,9 +367,9 @@ getRepLoggerState(PoolNameOrSocket) ->
% 500500
% 501
getRepLoggerFirstTick(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/logger-first-tick">>).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/logger-first-tick">>).
%
% WAL日志文件中可用的刻度值范
% GET /_api/replication/logger-tick-ranges
% WAL日志文件的刻度值的当前可用范围
% JSON数组
@ -380,7 +383,7 @@ getRepLoggerFirstTick(PoolNameOrSocket) ->
% 500
% 501
getRepLoggerTickRanges(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/logger-tick-ranges">>).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/logger-tick-ranges">>).
%
% applier命令允许远程启动ArangoDB数据库复制应用程序的状态和配置
@ -419,10 +422,10 @@ getRepLoggerTickRanges(PoolNameOrSocket) ->
% 405使HTTP方法时返回
% 500500
getRepApplierConfig(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/applier-config">>).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/applier-config">>).
getRepApplierConfig(PoolNameOrSocket, QueryPars) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/applier-config">>, QueryPars).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/applier-config">>, QueryPars).
%
% PUT /_api/replication/applier-config
@ -459,51 +462,49 @@ getRepApplierConfig(PoolNameOrSocket, QueryPars) ->
% 405使HTTP方法时返回
% 500500
setRepApplierConfig(PoolNameOrSocket, MapData) ->
BodyStr = eVPack:encodeBin(MapData),
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/applier-config">>, ?AgDefQuery, ?AgDefHeader, BodyStr).
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/applier-config">>, ?AgDefQuery, ?AgDefHeader, eVPack:encodeBin(MapData)).
setRepApplierConfig(PoolNameOrSocket, MapData, QueryPars) ->
BodyStr = eVPack:encodeBin(MapData),
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/applier-config">>, QueryPars, ?AgDefHeader, BodyStr).
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/applier-config">>, QueryPars, ?AgDefHeader, eVPack:encodeBin(MapData)).
%
% PUT /_api/replication/applier-start
%
% truefalse
% globaltruefalse
% fromlastLogTick值使
%
% 线使
% / _api / replication / applier-state API
%
% 200
% 400
% 405使HTTP方法时返回
% 500500
% 200
% 400
% 405使HTTP方法时返回
% 500500
startRepApplier(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/applier-start">>).
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/applier-start">>).
startRepApplier(PoolNameOrSocket, QueryPars) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/applier-start">>, QueryPars).
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/applier-start">>, QueryPars).
%
% PUT /_api/replication/applier-stop
%
% truefalse
% globaltruefalse
%
%
% 200
% 405使HTTP方法时返回
% 500500
stopRepApplier(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/applier-stop">>).
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/applier-stop">>).
stopRepApplier(PoolNameOrSocket, QueryPars) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/applier-stop">>, QueryPars).
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/applier-stop">>, QueryPars).
%
% GET /_api/replication/applier-state
%
% truefalse
% globaltruefalse
%
% JSON对象
% stateJSON对象
@ -540,79 +541,79 @@ stopRepApplier(PoolNameOrSocket, QueryPars) ->
% 405使HTTP方法时返回
% 500500
getRepApplierState(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/applier-state">>).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/applier-state">>).
getRepApplierState(PoolNameOrSocket, QueryPars) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/applier-state">>, QueryPars).
%
% PUT /_api/replication/make-slave
% JSON对象是必需的
% tcp//192.168.173.138529
% database
% username使ArangoDB用户名
% password使
% includeSystem
% strictTypeinclude或exclude
% restrictCollections使restrictTypelimitType为includelimitType为exclude
% maxConnectRetries
% connectTimeout
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/applier-state">>, QueryPars).
%
%
% PUT /_api/replication/make-follower
% JSON
% tcp://192.168.173.13:8529
% databaseleader
% username使 ArangoDB
% password : 使
% includeSystem :
% include或exclude
% restrictType为includerestrictType为exclude
% maxConnectRetries
% connectTimeout
% requestTimeout
% chunkSize使
% adaptivePolling使
% autoResync
% autoResyncRetries0autoResync
% initialSyncMaxWaitTime使autoResync设置为true时0
% connectionRetryWaitTime 0
% idleMinWaitTimeHTTP日志获取请求的频0
% idleMaxWaitTime HTTP日志获取请求的最大频率adaptivePolling设置为true时使 0
% requireFromPresenttrue requireFromPresent为truefalse
% verbosetrue
% ArangoDB数据库的完整数据同步
%
% JSON对象
% stateJSON对象
% running
% lastAppliedContinuousTick
% lastProcessedContinuousTick
%
% lastAvailableContinuousTick
% ticksBehind/
% 使
% 使
% time
% chunkSize使
% 使
% autoResync
% autoResyncRetries0autoResync
% initialSyncMaxWaitTimeautoResync设置为true时使0
% connectionRetryWaitTime 0
% idleMinWaitTime HTTP 0
% idleMaxWaitTime : . HTTP AdaptivePolling设置为True时使 0
% requireFromPresenttrue requireFromPresent为truefalse
% verbosetrue
% ArangoDB
%
% JSON
% state JSON
% running
% lastAppliedContinuousTick
% lastProcessedContinuousTick
%
% lastAvailableContinuousTick
% ticksBehind/
% 使
% 使
% time
% totalRequests
% totalFailedConnects
% totalEvents
% totalOperationsExcludedrestrictCollections而被排除的日志事件总数
% progressJSON对象
%
%
% failedConnects
% lastErrorJSON对象
% errorNum
% errorMessage
%
% totalOperationsExcludedrestrictCollections排除的日志事件总数
% progress JSON
% message :
% time :
% failedConnects :
% lastError JSON
% errorNum :
% errorMessage :
% time :
% lastError将为空
% serverJSON对象
% version
% serverIdID
%
% database
%
% ArangoDB数据
% 使
%
% server JSON
% version :
% serverId id
%
% database
%
% ArangoDB
% 使
%
%
%
% 200
% 400
% 405使HTTP方法时返回
% 500
% 501
%
% 200
% 400
% 405使HTTP方法时返回
% 500
% 501Coordinator上调用该操作时返
changeRepMakeSlave(PoolNameOrSocket, MapData) ->
BodyStr = eVPack:encodeBin(MapData),
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/make-slave">>, ?AgDefQuery, ?AgDefHeader, BodyStr).
agVstCli:callAgency(PoolNameOrSocket, ?AgPut, <<"/_api/replication/make-follower">>, ?AgDefQuery, ?AgDefHeader, eVPack:encodeBin(MapData)).
%
%ID
@ -625,7 +626,7 @@ changeRepMakeSlave(PoolNameOrSocket, MapData) ->
%405使HTTP方法时返回
%500500
getRepServerId(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/server-id">>).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/replication/server-id">>).
% WAL
% 线
@ -642,7 +643,7 @@ getRepServerId(PoolNameOrSocket) ->
% 500
% 501
getWalRange(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/wal/range">>).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/wal/range">>).
%
%
@ -659,7 +660,7 @@ getWalRange(PoolNameOrSocket) ->
% 500500
% 501
getWalLastTick(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/wal/lastTick">>).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/wal/lastTick">>).
%
% GET /_api/wal/tail
@ -705,8 +706,7 @@ getWalLastTick(PoolNameOrSocket) ->
% 500500
% 501
getWalTail(PoolNameOrSocket) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/wal/tail">>).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/wal/tail">>).
getWalTail(PoolNameOrSocket, QueryPars) ->
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/wal/tail">>, QueryPars).
agVstCli:callAgency(PoolNameOrSocket, ?AgGet, <<"/_api/wal/tail">>, QueryPars).

+ 2
- 4
src/agApi/agTransactions.erl ファイルの表示

@ -79,8 +79,7 @@
% 400使HTTP 400
% 404使HTTP 404
beginTransaction(PoolNameOrSocket, MapData) ->
BodyStr = eVPack:encodeBin(MapData),
agVstCli:callAgency(PoolNameOrSocket, ?AgPost, <<"/_api/transaction/begin">>, ?AgDefQuery, ?AgDefHeader, BodyStr).
agVstCli:callAgency(PoolNameOrSocket, ?AgPost, <<"/_api/transaction/begin">>, ?AgDefQuery, ?AgDefHeader, eVPack:encodeBin(MapData)).
%
% GET /_api/transaction/{transaction-id}
@ -197,8 +196,7 @@ getTransactionList(PoolNameOrSocket) ->
% 404使HTTP 404
% 500使HTTP 500
executeTransaction(PoolNameOrSocket, MapData) ->
BodyStr = eVPack:encodeBin(MapData),
agVstCli:callAgency(PoolNameOrSocket, ?AgPost, <<"/_api/transaction">>, ?AgDefQuery, ?AgDefHeader, BodyStr).
agVstCli:callAgency(PoolNameOrSocket, ?AgPost, <<"/_api/transaction">>, ?AgDefQuery, ?AgDefHeader, eVPack:encodeBin(MapData)).

読み込み中…
キャンセル
保存