aboutsummaryrefslogtreecommitdiffhomepage
path: root/shared
diff options
context:
space:
mode:
authorChocobozzz <me@florianbigard.com>2021-07-06 10:34:29 +0200
committerChocobozzz <me@florianbigard.com>2021-07-20 15:27:16 +0200
commita92ddacb38a4a17e117ca9ed41680a03580fb81d (patch)
tree7b7fc6ef31e86870cee20b915e05c49af1910055 /shared
parentf59545d97a80bf06025bf6343a80d834c7eb237f (diff)
downloadPeerTube-a92ddacb38a4a17e117ca9ed41680a03580fb81d.tar.gz
PeerTube-a92ddacb38a4a17e117ca9ed41680a03580fb81d.tar.zst
PeerTube-a92ddacb38a4a17e117ca9ed41680a03580fb81d.zip
Introduce logs command
Diffstat (limited to 'shared')
-rw-r--r--shared/extra-utils/index.ts2
-rw-r--r--shared/extra-utils/logs/index.ts1
-rw-r--r--shared/extra-utils/logs/logs-command.ts41
-rw-r--r--shared/extra-utils/logs/logs.ts32
-rw-r--r--shared/extra-utils/server/servers.ts3
-rw-r--r--shared/extra-utils/shared/abstract-command.ts2
6 files changed, 48 insertions, 33 deletions
diff --git a/shared/extra-utils/index.ts b/shared/extra-utils/index.ts
index c4f0afdc4..a3d3970af 100644
--- a/shared/extra-utils/index.ts
+++ b/shared/extra-utils/index.ts
@@ -6,6 +6,8 @@ export * from './custom-pages'
6 6
7export * from './feeds' 7export * from './feeds'
8 8
9export * from './logs'
10
9export * from './mock-servers/mock-instances-index' 11export * from './mock-servers/mock-instances-index'
10 12
11export * from './miscs/email' 13export * from './miscs/email'
diff --git a/shared/extra-utils/logs/index.ts b/shared/extra-utils/logs/index.ts
new file mode 100644
index 000000000..69452d7f0
--- /dev/null
+++ b/shared/extra-utils/logs/index.ts
@@ -0,0 +1 @@
export * from './logs-command'
diff --git a/shared/extra-utils/logs/logs-command.ts b/shared/extra-utils/logs/logs-command.ts
new file mode 100644
index 000000000..f7594734d
--- /dev/null
+++ b/shared/extra-utils/logs/logs-command.ts
@@ -0,0 +1,41 @@
1import { HttpStatusCode } from '../../core-utils/miscs/http-error-codes'
2import { LogLevel } from '../../models/server/log-level.type'
3import { AbstractCommand, OverrideCommandOptions } from '../shared'
4
5export class LogsCommand extends AbstractCommand {
6
7 getLogs (options: OverrideCommandOptions & {
8 startDate: Date
9 endDate?: Date
10 level?: LogLevel
11 }) {
12 const { startDate, endDate, level } = options
13 const path = '/api/v1/server/logs'
14
15 return this.getRequestBody({
16 ...options,
17
18 path,
19 query: { startDate, endDate, level },
20 defaultExpectedStatus: HttpStatusCode.OK_200
21 })
22 }
23
24 getAuditLogs (options: OverrideCommandOptions & {
25 startDate: Date
26 endDate?: Date
27 }) {
28 const { startDate, endDate } = options
29
30 const path = '/api/v1/server/audit-logs'
31
32 return this.getRequestBody({
33 ...options,
34
35 path,
36 query: { startDate, endDate },
37 defaultExpectedStatus: HttpStatusCode.OK_200
38 })
39 }
40
41}
diff --git a/shared/extra-utils/logs/logs.ts b/shared/extra-utils/logs/logs.ts
deleted file mode 100644
index 8d741276c..000000000
--- a/shared/extra-utils/logs/logs.ts
+++ /dev/null
@@ -1,32 +0,0 @@
1import { makeGetRequest } from '../requests/requests'
2import { LogLevel } from '../../models/server/log-level.type'
3import { HttpStatusCode } from '../../../shared/core-utils/miscs/http-error-codes'
4
5function getLogs (url: string, accessToken: string, startDate: Date, endDate?: Date, level?: LogLevel) {
6 const path = '/api/v1/server/logs'
7
8 return makeGetRequest({
9 url,
10 path,
11 token: accessToken,
12 query: { startDate, endDate, level },
13 statusCodeExpected: HttpStatusCode.OK_200
14 })
15}
16
17function getAuditLogs (url: string, accessToken: string, startDate: Date, endDate?: Date) {
18 const path = '/api/v1/server/audit-logs'
19
20 return makeGetRequest({
21 url,
22 path,
23 token: accessToken,
24 query: { startDate, endDate },
25 statusCodeExpected: HttpStatusCode.OK_200
26 })
27}
28
29export {
30 getLogs,
31 getAuditLogs
32}
diff --git a/shared/extra-utils/server/servers.ts b/shared/extra-utils/server/servers.ts
index b64c9eec6..4343eab93 100644
--- a/shared/extra-utils/server/servers.ts
+++ b/shared/extra-utils/server/servers.ts
@@ -10,6 +10,7 @@ import { BulkCommand } from '../bulk'
10import { CLICommand } from '../cli' 10import { CLICommand } from '../cli'
11import { CustomPagesCommand } from '../custom-pages' 11import { CustomPagesCommand } from '../custom-pages'
12import { FeedCommand } from '../feeds' 12import { FeedCommand } from '../feeds'
13import { LogsCommand } from '../logs'
13import { buildServerDirectory, getFileSize, isGithubCI, root, wait } from '../miscs/miscs' 14import { buildServerDirectory, getFileSize, isGithubCI, root, wait } from '../miscs/miscs'
14import { makeGetRequest } from '../requests/requests' 15import { makeGetRequest } from '../requests/requests'
15 16
@@ -69,6 +70,7 @@ interface ServerInfo {
69 cliCommand?: CLICommand 70 cliCommand?: CLICommand
70 customPageCommand?: CustomPagesCommand 71 customPageCommand?: CustomPagesCommand
71 feedCommand?: FeedCommand 72 feedCommand?: FeedCommand
73 logsCommand?: LogsCommand
72} 74}
73 75
74function parallelTests () { 76function parallelTests () {
@@ -278,6 +280,7 @@ async function runServer (server: ServerInfo, configOverrideArg?: any, args = []
278 server.cliCommand = new CLICommand(server) 280 server.cliCommand = new CLICommand(server)
279 server.customPageCommand = new CustomPagesCommand(server) 281 server.customPageCommand = new CustomPagesCommand(server)
280 server.feedCommand = new FeedCommand(server) 282 server.feedCommand = new FeedCommand(server)
283 server.logsCommand = new LogsCommand(server)
281 284
282 res(server) 285 res(server)
283 }) 286 })
diff --git a/shared/extra-utils/shared/abstract-command.ts b/shared/extra-utils/shared/abstract-command.ts
index 7f812daa8..a57222216 100644
--- a/shared/extra-utils/shared/abstract-command.ts
+++ b/shared/extra-utils/shared/abstract-command.ts
@@ -13,7 +13,7 @@ interface CommonCommandOptions extends OverrideCommandOptions {
13} 13}
14 14
15interface GetCommandOptions extends CommonCommandOptions { 15interface GetCommandOptions extends CommonCommandOptions {
16 query?: { [ id: string ]: string } 16 query?: { [ id: string ]: any }
17 contentType?: string 17 contentType?: string
18 accept?: string 18 accept?: string
19} 19}