...
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16 package timechaos
17
18 import (
19 "fmt"
20 "io"
21 "net/http"
22 "time"
23 )
24
25
26 func getPodTimeNS(c http.Client, port uint16) (*time.Time, error) {
27 resp, err := c.Get(fmt.Sprintf("http://localhost:%d/time", port))
28 if err != nil {
29 return nil, err
30 }
31
32 out, err := io.ReadAll(resp.Body)
33 defer resp.Body.Close()
34 if err != nil {
35 return nil, err
36 }
37
38 t, err := time.Parse(time.RFC3339Nano, string(out))
39 if err != nil {
40 return nil, err
41 }
42 return &t, nil
43 }
44
45
46 func getPodChildProcessTimeNS(c http.Client, port uint16) (*time.Time, error) {
47 resp, err := c.Get(fmt.Sprintf("http://localhost:%d/child-process-time", port))
48 if err != nil {
49 return nil, err
50 }
51
52 out, err := io.ReadAll(resp.Body)
53 defer resp.Body.Close()
54 if err != nil {
55 return nil, err
56 }
57
58 t, err := time.Parse(time.RFC3339Nano, string(out))
59 if err != nil {
60 return nil, err
61 }
62 return &t, nil
63 }
64