1package csm_test
2
3import (
4	"fmt"
5
6	"github.com/aws/aws-sdk-go/aws"
7	"github.com/aws/aws-sdk-go/aws/csm"
8	"github.com/aws/aws-sdk-go/aws/session"
9	"github.com/aws/aws-sdk-go/service/s3"
10)
11
12func ExampleStart() {
13	r, err := csm.Start("clientID", ":31000")
14	if err != nil {
15		panic(fmt.Errorf("failed starting CSM:  %v", err))
16	}
17
18	sess, err := session.NewSession(&aws.Config{})
19	if err != nil {
20		panic(fmt.Errorf("failed loading session: %v", err))
21	}
22
23	r.InjectHandlers(&sess.Handlers)
24
25	client := s3.New(sess)
26	client.GetObject(&s3.GetObjectInput{
27		Bucket: aws.String("bucket"),
28		Key:    aws.String("key"),
29	})
30
31	// Pauses monitoring
32	r.Pause()
33	client.GetObject(&s3.GetObjectInput{
34		Bucket: aws.String("bucket"),
35		Key:    aws.String("key"),
36	})
37
38	// Resume monitoring
39	r.Continue()
40}
41