ich zur Zeit versucht, die folgende Golang bauen zum ersten Mal auf einem Amazon Linux Distro auszuführen:GO Skript-Laufzeitfehler für Amazon AWS S3
Readme Hier:
go get github.com/adammck/s3-graphite
cd $GOPATH/adammck/s3-graphite
go build
Danach setzte ich meine Variablen in meinem .bashrc wie unten:
# AWS keys with read access to the bucket
export AWS_ACCESS_KEY_ID=xxxxxxxxxx
export AWS_SECRET_ACCESS_KEY=yyyyyyyyyy
export AWS_REGION=us-east-1
# the bucket to watch
export S3_BUCKET=my-bucket
export S3_PREFIX=dir/subdir
# the server to send metrics to
export GRAPHITE_ADDRESS=metrics.example.com
export GRAPHITE_PREFIX=s3-count.my-bucket.dir.subdir
ich meine GOPATH auf die folgenden:
export GOPATH="$HOME/work/"
I-CD in das Verzeichnis ein Go Build zu laufen, die funktioniert, wie es sollte, aber wenn ich die folgenden nach dem Sprung Build auszuführen:
./s3-Graphit
bekomme ich folgende Fehlermeldung:
INFO[0000] Starting s3-graphite...
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xb code=0x1 addr=0x20 pc=0x4e3256]
goroutine 1 [running]:
github.com/aws/aws-sdk-go/service/s3.New(0x0, 0x0, 0x0, 0x0, 0x0, 0x3f)
/home/ec2-user/work/src/github.com/aws/aws-sdk-go/service/s3/service.go:41 +0x76
main.NewS3(0x7ffc202bef6e, 0x1b, 0x7ffc202be684, 0x9, 0x1, 0x0, 0x0)
/home/ec2-user/work/src/github.com/adammck/s3-graphite/s3.go:20 +0x66
main.main()
/home/ec2-user/work/src/github.com/adammck/s3-graphite/main.go:19 +0x21c
goroutine 2 [runnable]:
runtime.forcegchelper()
/usr/lib/golang/src/runtime/proc.go:90
runtime.goexit()
/usr/lib/golang/src/runtime/asm_amd64.s:2232 +0x1
goroutine 3 [runnable]:
runtime.bgsweep()
/usr/lib/golang/src/runtime/mgc0.go:82
runtime.goexit()
/usr/lib/golang/src/runtime/asm_amd64.s:2232 +0x1
goroutine 4 [runnable]:
runtime.runfinq()
/usr/lib/golang/src/runtime/malloc.go:712
runtime.goexit()
/usr/lib/golang/src/runtime/asm_amd64.s:2232 +0x1
Hier ist meine GOPATH:
$GOPATH
-bash: /home/ec2-user/work/: Is a directory
Hier ist mein dir, wo ich die s3-Graphit ausführen:
/home/ec2-user/work/src/github.com/adammck/s3-graphite
EDIT (aktualisiert mit Elemente aus Ihrer Antwort:
[[email protected]]$ go version
go version go1.6.3 linux/amd64
[[email protected] s3-graphite]$ $GOPATH
-bash: /home/ec2-user/work: Is a directory
[[email protected] s3-graphite]$ pwd
/home/ec2-user/work/src/github.com/adammck/s3-graphite
[[email protected] s3-graphite]$ ./s3-graphite
INFO[0000] Starting s3-graphite...
panic: runtime error: invalid memory address or nil pointer dereference
[signal 0xb code=0x1 addr=0x20 pc=0x512aa2]
goroutine 1 [running]:
panic(0x873120, 0xc82000a0e0)
/usr/local/go/src/runtime/panic.go:481 +0x3e6
github.com/aws/aws-sdk-go/service/s3.New(0x0, 0x0, 0x0, 0x0, 0x0, 0x3f)
/home/ec2-user/work/src/github.com/aws/aws-sdk-go/service/s3/service.go:41 +0x72
main.NewS3(0xc82001603a, 0x1b, 0xc82000e06a, 0x9, 0x1, 0x0, 0x0)
/home/ec2-user/work/src/github.com/adammck/s3-graphite/s3.go:20 +0x4a
main.main()
/home/ec2-user/work/src/github.com/adammck/s3-graphite/main.go:19 +0x229
[[email protected] s3-graphite]$
Danke für die Antwort. Ich aktualisierte die GO-Version und stellte sicher, dass der $ GOPATH mit der Beschaffung der .bashrc-Datei mit den Daten, die ich brauche, zusammenarbeitet, aber es ist immer noch ein Nein. Bitte siehe oben im Hauptbeitrag. @ rking788 – hijaked79