Giter Site home page Giter Site logo

tailwarden / komiser Goto Github PK

View Code? Open in Web Editor NEW
3.9K 46.0 428.0 150 MB

Open-source cloud-environment inspector. Supporting AWS, GCP, Azure, and more! Your cloud resources will have nowhere to hide!

Home Page: https://komiser.io

License: Other

Go 53.26% TypeScript 45.84% JavaScript 0.56% CSS 0.11% Dockerfile 0.04% Shell 0.07% Makefile 0.13%
aws azure cost-optimization digitalocean gcp kubernetes oci open-source civo inventory-management linode tencent hacktoberfest

komiser's Introduction

Amp Logo

Komiser is an open-source cloud-agnostic resource manager designed to analyze and manage cloud cost, usage, security, and governance all in one place. It integrates seamlessly with multiple cloud providers, including AWS, Azure, Civo, Digital Ocean, OCI, Linode, Tencent, Scaleway and more. Interested? read more about Komiser on our website.

If youโ€™re using Komiser or if you like the project, please โญ this repository to show your support! ๐Ÿคฉ

Discord GitHub commit activity Docker pulls

Komiser gif

Table of Contents

What is Komiser? ๐Ÿคท

Komiser is an open source project created to analyse and manage cloud cost, usage, security and governance all in one place. With komiser you can also:

  • Build an inventory of your cloud infrastructure assets.
  • Control your resource usage and gain visibility across all used services to achieve maximum cost-effectiveness.
  • Detect potential vulnerabilities that could put your cloud environment at risk.
  • Get a deep understanding of how you spend on the AWS, Azure, GCP, Civo, DigitalOcean and OCI.
  • Uncover idle and untagged resources, ensuring that no resource goes unnoticed.

Komiser dashboard

Who is using it?

Komiser was built with every Cloud Engineer, Developer, DevOps engineer and SRE in mind. We understand that tackling cost savings, security improvements and resource usage analyse efforts can be hard, sometimes just knowing where to start, can be the most challenging part at times. Komiser is here to help those cloud practitioners see their cloud resources and accounts much more clearly. Only with clear insight can timely and efficient actions take place.

Getting started

Installation

Tailwarden Cloud (Free & Recommended)

Head over to Tailwarden.

Linux

wget https://cli.komiser.io/latest/komiser_Linux_x86_64 -O komiser

Windows

wget https://cli.komiser.io/latest/komiser_Windows_x86_64.zip
tar -xf komiser_Windows_x86_64.zip

Mac OS X

ARM architecture (M1 & M2 Chip)

wget https://cli.komiser.io/latest/komiser_Darwin_arm64 -O komiser

AMD architecture (Intel Chip)

wget https://cli.komiser.io/latest/komiser_Darwin_x86_64 -O komiser

Homebrew

brew update
brew tap tailwarden/komiser
brew install komiser

# Make sure you are running the newest version of Komiser:
brew update
brew reinstall komiser

Configuration

Providers Documentation Video
Kubernetes Kubernetes documentation link Komiser + k8s
AWS AWS documentation link Komiser + AWS EKS
Azure Azure documentation link
Civo Civo documentation link Komiser + Civo
Digital Ocean Digital Ocean documentation link
Akamai (Linode) Akamai (Linode) documentation link
GCP GCP documentation link
OCI Oracle Cloud Infrastructure documentation link
Tencent Cloud Tencent Cloud documentation link
Scaleway Scaleway documentation link
MongoDB Atlas MongoDB Atlas documentation link

Resources ๐Ÿ“–

Bugs and feature requests ๐Ÿž

Have a bug or a feature request? Please first read the issue guidelines and search for existing and closed issues. If your problem or idea is not addressed yet, please open a new issue.

Roadmap and Contributing ๐Ÿ›ฃ๏ธ

We are very excited about what is in store in the coming weeks and months, take a look at the public roadmap to stay on top of what's coming down the pipeline.

Komiser is written in Golang and is Elv2 licensed - contributions are always welcome whether that means providing feedback through GitHub, through the #feedback channel on our Discord server, testing existing features or suggesting new ones. Feel free to check out our contributor guidelines and consider becoming a contributor today.

Learn how to contribute with these walkthrough videos:

Users ๐Ÿง‘โ€๐Ÿคโ€๐Ÿง‘

If you'd like to have your company represented and are using Komiser please give formal written permission below via email to [email protected].

We will need a URL to an SVG or png logo, a text title, and a company URL.

Contributors

Versioning ๐Ÿงฎ

We use SemVer for versioning. For the versions available, see the tags on this repository.

License

Komiser is licensed under the terms of Elastic License 2.0 (ELv2).

komiser's People

Contributors

akshayamadhuri avatar annucode avatar asn1809 avatar avineshtripathi avatar azanul avatar bagulm123 avatar bishal7679 avatar dependabot[bot] avatar eneskaya avatar faisal7008 avatar fpapadamis avatar greghub avatar jakepage91 avatar jbleduigou avatar jebinjeb avatar kolawole99 avatar mlabouardy avatar nemca avatar pavangudiwada avatar professorabhay avatar pumpkinseed avatar shavidze avatar shivam-sharma7 avatar shobhitexe avatar shubhampalriwala avatar shubhindia avatar titanventura avatar traxmaxx avatar umrkhn avatar victorgaard avatar

Stargazers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

Watchers

 avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar  avatar

komiser's Issues

Authentication

Komiser works pretty well for an individual. However my use case is that we'd want to stand this up for a team to use, and potentially customers. This implies we'd want authentication of some kind.

I'm brand-new to Golang - is there an auth library one can jack in?

See all notifications button broken

Version: 2.1.0
Browsers: Chromium, Firefox
When I press on 'See all notifications' button in Notifications dropdown, nothing is happening. No activity reported in Network section in the browser's inspector and no errors are logged in JS console.

Few Services Returning "HTTP 500"

Hi,

My site is returning 500 for few services. The log is below.

157.49.247.213 - - [28/Oct/2018:05:02:07 +0000] "GET / HTTP/1.1" 200 1745
157.49.247.213 - - [28/Oct/2018:05:02:07 +0000] "GET /styles.05d4aeeb77605b05dbf9.bundle.css HTTP/1.1" 200 12557
157.49.247.213 - - [28/Oct/2018:05:02:07 +0000] "GET /inline.3ccb99ed5f99f84b8ce6.bundle.js HTTP/1.1" 200 1445
157.49.191.99 - - [28/Oct/2018:05:02:08 +0000] "GET /polyfills.abdf53ca655716e505e0.bundle.js HTTP/1.1" 200 59417
157.49.191.99 - - [28/Oct/2018:05:02:08 +0000] "GET /main.ec2b6339a7c503308fbf.bundle.js HTTP/1.1" 200 1202122
157.49.191.99 - - [28/Oct/2018:05:02:10 +0000] "GET /acl HTTP/1.1" 500 46
157.49.247.213 - - [28/Oct/2018:05:02:10 +0000] "GET /nat HTTP/1.1" 500 46
157.49.247.213 - - [28/Oct/2018:05:02:10 +0000] "GET /security_group HTTP/1.1" 500 46
157.49.191.99 - - [28/Oct/2018:05:02:10 +0000] "GET /vpc HTTP/1.1" 500 46
157.49.247.213 - - [28/Oct/2018:05:02:10 +0000] "GET /eip HTTP/1.1" 500 46
157.49.247.213 - - [28/Oct/2018:05:02:10 +0000] "GET /internet_gateway HTTP/1.1" 500 46
157.49.191.99 - - [28/Oct/2018:05:02:10 +0000] "GET /key_pair HTTP/1.1" 500 46
157.49.247.213 - - [28/Oct/2018:05:02:10 +0000] "GET /route_table HTTP/1.1" 500 46
157.49.247.213 - - [28/Oct/2018:05:02:10 +0000] "GET /autoscaling_group HTTP/1.1" 500 60
157.49.191.99 - - [28/Oct/2018:05:02:10 +0000] "GET /dynamodb HTTP/1.1" 500 68
157.49.247.213 - - [28/Oct/2018:05:02:10 +0000] "GET /ebs HTTP/1.1" 500 42
157.49.247.213 - - [28/Oct/2018:05:02:10 +0000] "GET /snapshot HTTP/1.1" 500 44
157.49.247.213 - - [28/Oct/2018:05:02:10 +0000] "GET /elb HTTP/1.1" 500 65
157.49.247.213 - - [28/Oct/2018:05:02:10 +0000] "GET /lambda HTTP/1.1" 500 43
157.49.191.99 - - [28/Oct/2018:05:02:10 +0000] "GET /sqs HTTP/1.1" 500 37
157.49.247.213 - - [28/Oct/2018:05:02:11 +0000] "GET /sns HTTP/1.1" 500 37
157.49.247.213 - - [28/Oct/2018:05:02:11 +0000] "GET /cloudwatch HTTP/1.1" 500 48
157.49.191.99 - - [28/Oct/2018:05:02:11 +0000] "GET /iam/group HTTP/1.1" 200 1
157.49.247.213 - - [28/Oct/2018:05:02:11 +0000] "GET /hosted_zone HTTP/1.1" 200 1
157.49.247.213 - - [28/Oct/2018:05:02:11 +0000] "GET /iam/policy HTTP/1.1" 200 3
157.49.247.213 - - [28/Oct/2018:05:02:11 +0000] "GET /iam/role HTTP/1.1" 200 2
157.49.191.99 - - [28/Oct/2018:05:02:10 +0000] "GET /cost HTTP/1.1" 200 639
157.49.247.213 - - [28/Oct/2018:05:02:11 +0000] "GET /iam/user HTTP/1.1" 200 1
157.49.247.213 - - [28/Oct/2018:05:02:11 +0000] "GET /s3 HTTP/1.1" 500 42
157.49.191.99 - - [28/Oct/2018:05:02:11 +0000] "GET /cloudfront HTTP/1.1" 200 1
157.49.247.213 - - [28/Oct/2018:05:02:11 +0000] "GET /ec2 HTTP/1.1" 500 44

The below permission is for ec2 and i feel permissions are fine.

image

Site Notification:

image

Go panic

I've downloaded the latest macOS build (as listed in the README) and I get a Go runtime panic:

2018/03/20 16:32:21 http: panic serving [::1]:55404: runtime error: invalid memory address or nil pointer dereference
goroutine 2142 [running]:
net/http.(*conn).serve.func1(0xc4204f9ea0)
	/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x1dd3680, 0x2e70730)
	/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc4211f87b0, 0x9, 0x2de2520, 0xc42001ac60, 0x2dde220, 0xc4201926a0, 0xc420163200, 0xc42007a580, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc42000a26b, 0x9, 0x2de2520, 0xc42001ac60, 0x2dde220, 0xc4201926a0, 0xc420163200, 0xc42007a580, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc4201981e0, 0x35a0078, 0xc422287ce0, 0xc4202a2f00)
	/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x35a0078, 0xc422287ce0, 0xc4202a2f00)
	/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc420167580, 0x35a0078, 0xc422287ce0, 0xc4202a2f00)
	/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc4201690a0, 0x35a0078, 0xc422287ce0, 0xc4202a2f00)
	/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201c4120, 0x35a0078, 0xc422287ce0, 0xc4202a2d00)
	/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x2de1860, 0xc42000c018, 0x2de0ae0, 0xc4201c4120, 0x2de8aa0, 0xc4202c0540, 0xc4202a2d00)
	/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc420193880, 0x2de8aa0, 0xc4202c0540, 0xc4202a2d00)
	<autogenerated>:8 +0x86
net/http.serverHandler.ServeHTTP(0xc420144dc0, 0x2de8aa0, 0xc4202c0540, 0xc4202a2d00)
	/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc4204f9ea0, 0x2de93e0, 0xc423d2a7c0)
	/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
	/usr/local/go/src/net/http/server.go:2668 +0x2ce

ce:GetCostAndUsage is missing

Even with the get cost set correctly in the IAM permissions, I still get the error โ€œ ce:GetCostAndUsage is missingโ€, have you seen this before?

Thanks

Invalid memory address or nil dereference [AutoScalingGroups]

% ./komiser start --port 3000
1.2.3.4 - - [23/Mar/2018:10:05:20 +0000] "GET / HTTP/1.1" 200 1745
1.2.3.4 - - [23/Mar/2018:10:05:20 +0000] "GET /styles.05d4aeeb77605b05dbf9.bundle.css HTTP/1.1" 200 12557
1.2.3.4 - - [23/Mar/2018:10:05:21 +0000] "GET /inline.47d04ba836b188db631f.bundle.js HTTP/1.1" 200 1445
1.2.3.4 - - [23/Mar/2018:10:05:21 +0000] "GET /polyfills.abdf53ca655716e505e0.bundle.js HTTP/1.1" 200 59417
1.2.3.4 - - [23/Mar/2018:10:05:21 +0000] "GET /favicon.ico HTTP/1.1" 200 165662
1.2.3.4 - - [23/Mar/2018:10:05:21 +0000] "GET /main.8097dd79d6203e629625.bundle.js HTTP/1.1" 200 1202124
1.2.3.4 - - [23/Mar/2018:10:05:21 +0000] "GET /nat HTTP/1.1" 500 46
1.2.3.4 - - [23/Mar/2018:10:05:21 +0000] "GET /internet_gateway HTTP/1.1" 200 2
1.2.3.4 - - [23/Mar/2018:10:05:21 +0000] "GET /acl HTTP/1.1" 200 2
1.2.3.4 - - [23/Mar/2018:10:05:24 +0000] "GET /key_pair HTTP/1.1" 200 1
1.2.3.4 - - [23/Mar/2018:10:05:21 +0000] "GET /security_group HTTP/1.1" 200 2
1.2.3.4 - - [23/Mar/2018:10:05:21 +0000] "GET /vpc HTTP/1.1" 200 2
1.2.3.4 - - [23/Mar/2018:10:05:21 +0000] "GET /eip HTTP/1.1" 200 1
1.2.3.4 - - [23/Mar/2018:10:05:32 +0000] "GET /cost HTTP/1.1" 500 41
1.2.3.4 - - [23/Mar/2018:10:05:33 +0000] "GET /lambda HTTP/1.1" 500 43
1.2.3.4 - - [23/Mar/2018:10:05:32 +0000] "GET /snapshot HTTP/1.1" 200 20
1.2.3.4 - - [23/Mar/2018:10:05:32 +0000] "GET /route_table HTTP/1.1" 200 2
1.2.3.4 - - [23/Mar/2018:10:05:32 +0000] "GET /ebs HTTP/1.1" 200 53
1.2.3.4 - - [23/Mar/2018:10:05:37 +0000] "GET /hosted_zone HTTP/1.1" 200 1
1.2.3.4 - - [23/Mar/2018:10:05:32 +0000] "GET /dynamodb HTTP/1.1" 200 61
1.2.3.4 - - [23/Mar/2018:10:05:41 +0000] "GET /iam/role HTTP/1.1" 200 2
1.2.3.4 - - [23/Mar/2018:10:05:41 +0000] "GET /iam/group HTTP/1.1" 200 1
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /iam/policy HTTP/1.1" 200 3
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /iam/user HTTP/1.1" 200 1
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/logo.svg HTTP/1.1" 200 6024
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/s3.png HTTP/1.1" 200 1227
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/snapshot.png HTTP/1.1" 200 1322
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/snapshot_size.png HTTP/1.1" 200 383
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/ebs.png HTTP/1.1" 200 318
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/user.png HTTP/1.1" 200 797
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/role.png HTTP/1.1" 200 3105
2018/03/23 10:05:42 http: panic serving 1.2.3.4:65061: runtime error: invalid memory address or nil pointer dereference
goroutine 13 [running]:
net/http.(*conn).serve.func1(0xc42018c140)
/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x11c9fa0, 0x225f590)
/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc420bc2f20, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc4200f8751, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc4201a01e0, 0x7fa28ab893f0, 0xc420275530, 0xc4201c2800)
/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x7fa28ab893f0, 0xc420275530, 0xc4201c2800)
/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc4201ac2e0, 0x7fa28ab893f0, 0xc420275530, 0xc4201c2800)
/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42019e4d0, 0x7fa28ab893f0, 0xc420275530, 0xc4201c2800)
/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ce120, 0x7fa28ab893f0, 0xc420275530, 0xc4209eae00)
/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x21d0a60, 0xc42000e018, 0x21cfd20, 0xc4201ce120, 0x21d7960, 0xc42031c2a0, 0xc4209eae00)
/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc42019d460, 0x21d7960, 0xc42031c2a0, 0xc4209eae00)
:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cf20, 0x21d7960, 0xc42031c2a0, 0xc4209eae00)
/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc42018c140, 0x21d82a0, 0xc4203c0480)
/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2668 +0x2ce
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/group.png HTTP/1.1" 200 1549
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/policy.png HTTP/1.1" 200 840
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/distribution.png HTTP/1.1" 200 1775
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/vpc.png HTTP/1.1" 200 1248
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/acl.png HTTP/1.1" 200 6637
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/sg.png HTTP/1.1" 200 983
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/nat.png HTTP/1.1" 200 1666
1.2.3.4 - - [23/Mar/2018:10:05:42 +0000] "GET /assets/images/igw.png HTTP/1.1" 200 1826
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/eip.png HTTP/1.1" 200 687
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/keypair.png HTTP/1.1" 200 1255
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/asg.png HTTP/1.1" 200 1078
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/keypair.png HTTP/1.1" 200 1255 [215/345]
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/asg.png HTTP/1.1" 200 1078
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/route_table.png HTTP/1.1" 200 2075
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/cluster.png HTTP/1.1" 200 1468
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/service.png HTTP/1.1" 200 2657
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/task.png HTTP/1.1" 200 709
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/rds.png HTTP/1.1" 200 574
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/dynamodb.png HTTP/1.1" 200 1719
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/dynamodb_write.png HTTP/1.1" 200 517
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/dynamodb_read.png HTTP/1.1" 200 800
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/sqs.png HTTP/1.1" 200 1406
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/sns.png HTTP/1.1" 200 1155
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /cloudfront HTTP/1.1" 200 1
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /assets/images/hostedzone.png HTTP/1.1" 200 1220
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /s3 HTTP/1.1" 200 2
1.2.3.4 - - [23/Mar/2018:10:05:36 +0000] "GET /sqs HTTP/1.1" 200 1
1.2.3.4 - - [23/Mar/2018:10:05:36 +0000] "GET /sns HTTP/1.1" 200 1
1.2.3.4 - - [23/Mar/2018:10:05:38 +0000] "GET /cloudwatch HTTP/1.1" 200 30
1.2.3.4 - - [23/Mar/2018:10:05:35 +0000] "GET /elb HTTP/1.1" 200 13
1.2.3.4 - - [23/Mar/2018:10:05:43 +0000] "GET /ec2 HTTP/1.1" 200 328
2018/03/23 10:05:53 http: panic serving 1.2.3.4:65055: runtime error: invalid memory address or nil pointer dereference
goroutine 11 [running]:
net/http.(*conn).serve.func1(0xc4202f2140)
/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x11c9fa0, 0x225f590)
/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc420482270, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc4200f8751, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc4201a01e0, 0x7fa28ab893f0, 0xc420275620, 0xc4203db800)
/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x7fa28ab893f0, 0xc420275620, 0xc4203db800)
/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc4201ac2e0, 0x7fa28ab893f0, 0xc420275620, 0xc4203db800)
/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42019e4d0, 0x7fa28ab893f0, 0xc420275620, 0xc4203db800)
/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ce120, 0x7fa28ab893f0, 0xc420275620, 0xc4203db400)
/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x21d0a60, 0xc42000e018, 0x21cfd20, 0xc4201ce120, 0x21d7960, 0xc420aea0e0, 0xc4203db400)
/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc42019d460, 0x21d7960, 0xc420aea0e0, 0xc4203db400)
:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cf20, 0x21d7960, 0xc420aea0e0, 0xc4203db400)
/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc4202f2140, 0x21d82a0, 0xc420285640)
/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2668 +0x2ce
2018/03/23 10:06:03 http: panic serving 1.2.3.4:65056: runtime error: invalid memory address or nil pointer dereference
goroutine 10 [running]:
net/http.(*conn).serve.func1(0xc4202f20a0)
/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x11c9fa0, 0x225f590)
/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc4209e9d70, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc4200f8751, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc4201a01e0, 0x7fa28ab893f0, 0xc420ce21b0, 0xc42000ba00)
/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x7fa28ab893f0, 0xc420ce21b0, 0xc42000ba00)
/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc4201ac2e0, 0x7fa28ab893f0, 0xc420ce21b0, 0xc42000ba00)
/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42019e4d0, 0x7fa28ab893f0, 0xc420ce21b0, 0xc42000ba00)
/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ce120, 0x7fa28ab893f0, 0xc420ce21b0, 0xc420b71b00)
/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x21d0a60, 0xc42000e018, 0x21cfd20, 0xc4201ce120, 0x21d7960, 0xc420389180, 0xc420b71b00)
/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc42019d460, 0x21d7960, 0xc420389180, 0xc420b71b00)
:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cf20, 0x21d7960, 0xc420389180, 0xc420b71b00)
/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc4202f20a0, 0x21d82a0, 0xc4201b40c0)
/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2668 +0x2ce
2018/03/23 10:06:12 http: panic serving 1.2.3.4:65054: runtime error: invalid memory address or nil pointer dereference
goroutine 9 [running]:
2018/03/23 10:06:12 http: panic serving 1.2.3.4:65054: runtime error: invalid memory address or nil pointer dereference [135/345]
goroutine 9 [running]:
net/http.(*conn).serve.func1(0xc4202f2000)
/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x11c9fa0, 0x225f590)
/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc4202275c0, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc4200f8751, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc4201a01e0, 0x7fa28ab893f0, 0xc4203b4630, 0xc4201e4d00)
/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x7fa28ab893f0, 0xc4203b4630, 0xc4201e4d00)
/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc4201ac2e0, 0x7fa28ab893f0, 0xc4203b4630, 0xc4201e4d00)
/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42019e4d0, 0x7fa28ab893f0, 0xc4203b4630, 0xc4201e4d00)
/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ce120, 0x7fa28ab893f0, 0xc4203b4630, 0xc420d23f00)
/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x21d0a60, 0xc42000e018, 0x21cfd20, 0xc4201ce120, 0x21d7960, 0xc42031c2a0, 0xc420d23f00)
/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc42019d460, 0x21d7960, 0xc42031c2a0, 0xc420d23f00)
:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cf20, 0x21d7960, 0xc42031c2a0, 0xc420d23f00)
/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc4202f2000, 0x21d82a0, 0xc420285440)
/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2668 +0x2ce
2018/03/23 10:06:22 http: panic serving 1.2.3.4:65053: runtime error: invalid memory address or nil pointer dereference
goroutine 6 [running]:
net/http.(*conn).serve.func1(0xc4201abb80)
/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x11c9fa0, 0x225f590)
/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc4201ac510, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc4200f8751, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc4201a01e0, 0x7fa28ab893f0, 0xc4202cb5c0, 0xc4201e5200)
/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x7fa28ab893f0, 0xc4202cb5c0, 0xc4201e5200)
/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc4201ac2e0, 0x7fa28ab893f0, 0xc4202cb5c0, 0xc4201e5200)
/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42019e4d0, 0x7fa28ab893f0, 0xc4202cb5c0, 0xc4201e5200)
/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ce120, 0x7fa28ab893f0, 0xc4202cb5c0, 0xc4204bc300)
/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x21d0a60, 0xc42000e018, 0x21cfd20, 0xc4201ce120, 0x21d7960, 0xc4203d4460, 0xc4204bc300)
/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc42019d460, 0x21d7960, 0xc4203d4460, 0xc4204bc300)
:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cf20, 0x21d7960, 0xc4203d4460, 0xc4204bc300)
/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc4201abb80, 0x21d82a0, 0xc4200fbac0)
/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2668 +0x2ce
2018/03/23 10:06:31 http: panic serving 1.2.3.4:65084: runtime error: invalid memory address or nil pointer dereference
goroutine 1340 [running]:
net/http.(*conn).serve.func1(0xc4204568c0)
/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x11c9fa0, 0x225f590)
/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc42037e300, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc4200f8751, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc4201a01e0, 0x7fa28ab893f0, 0xc420317ad0, 0xc4201c2800)
/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x7fa28ab893f0, 0xc420317ad0, 0xc4201c2800)
/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc4201ac2e0, 0x7fa28ab893f0, 0xc420317ad0, 0xc4201c2800)
/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42019e4d0, 0x7fa28ab893f0, 0xc420317ad0, 0xc4201c2800)
/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ce120, 0x7fa28ab893f0, 0xc420317ad0, 0xc42000ad00)
/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x21d0a60, 0xc42000e018, 0x21cfd20, 0xc4201ce120, 0x21d7960, 0xc4203d5b20, 0xc42000ad00)
/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x21d0a60, 0xc42000e018, 0x21cfd20, 0xc4201ce120, 0x21d7960, 0xc4203d5b20, 0xc42000ad00) [55/345]
/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc42019d460, 0x21d7960, 0xc4203d5b20, 0xc42000ad00)
:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cf20, 0x21d7960, 0xc4203d5b20, 0xc42000ad00)
/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc4204568c0, 0x21d82a0, 0xc420c32180)
/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2668 +0x2ce
2018/03/23 10:06:41 http: panic serving 1.2.3.4:65062: runtime error: invalid memory address or nil pointer dereference
goroutine 14 [running]:
net/http.(*conn).serve.func1(0xc42018c1e0)
/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x11c9fa0, 0x225f590)
/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc4200f9d80, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc4200f8751, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc4201a01e0, 0x7fa28ab893f0, 0xc42067e180, 0xc4204bc300)
/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x7fa28ab893f0, 0xc42067e180, 0xc4204bc300)
/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc4201ac2e0, 0x7fa28ab893f0, 0xc42067e180, 0xc4204bc300)
/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42019e4d0, 0x7fa28ab893f0, 0xc42067e180, 0xc4204bc300)
/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ce120, 0x7fa28ab893f0, 0xc42067e180, 0xc420c95700)
/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x21d0a60, 0xc42000e018, 0x21cfd20, 0xc4201ce120, 0x21d7960, 0xc4205368c0, 0xc420c95700)
/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc42019d460, 0x21d7960, 0xc4205368c0, 0xc420c95700)
:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cf20, 0x21d7960, 0xc4205368c0, 0xc420c95700)
/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc42018c1e0, 0x21d82a0, 0xc4203c06c0)
/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2668 +0x2ce
2018/03/23 10:06:51 http: panic serving 1.2.3.4:65092: runtime error: invalid memory address or nil pointer dereference
goroutine 2398 [running]:
net/http.(*conn).serve.func1(0xc42018d540)
/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x11c9fa0, 0x225f590)
/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc420385250, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc4200f8751, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc4201a01e0, 0x7fa28ab893f0, 0xc420231200, 0xc42000be00)
/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x7fa28ab893f0, 0xc420231200, 0xc42000be00)
/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc4201ac2e0, 0x7fa28ab893f0, 0xc420231200, 0xc42000be00)
/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42019e4d0, 0x7fa28ab893f0, 0xc420231200, 0xc42000be00)
/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ce120, 0x7fa28ab893f0, 0xc420231200, 0xc42000bc00)
/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x21d0a60, 0xc42000e018, 0x21cfd20, 0xc4201ce120, 0x21d7960, 0xc42031c620, 0xc42000bc00)
/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc42019d460, 0x21d7960, 0xc42031c620, 0xc42000bc00)
:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cf20, 0x21d7960, 0xc42031c620, 0xc42000bc00)
/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc42018d540, 0x21d82a0, 0xc4206a1340)
/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2668 +0x2ce
2018/03/23 10:07:01 http: panic serving 1.2.3.4:65093: runtime error: invalid memory address or nil pointer dereference
goroutine 2278 [running]:
net/http.(*conn).serve.func1(0xc4204561e0)
/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x11c9fa0, 0x225f590)
/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc4204e7360, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc4200f8751, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc4201a01e0, 0x7fa28ab893f0, 0xc4208d8150, 0xc4204bc400)
/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
/usr/local/go/src/net/http/server.go:1942 +0x44 [0/345]
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42019e4d0, 0x7fa28ab893f0, 0xc420231200, 0xc42000be00)
/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ce120, 0x7fa28ab893f0, 0xc420231200, 0xc42000bc00)
/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x21d0a60, 0xc42000e018, 0x21cfd20, 0xc4201ce120, 0x21d7960, 0xc42031c620, 0xc42000bc00)
/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc42019d460, 0x21d7960, 0xc42031c620, 0xc42000bc00)
:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cf20, 0x21d7960, 0xc42031c620, 0xc42000bc00)
/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc42018d540, 0x21d82a0, 0xc4206a1340)
/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2668 +0x2ce
2018/03/23 10:07:01 http: panic serving 1.2.3.4:65093: runtime error: invalid memory address or nil pointer dereference
goroutine 2278 [running]:
net/http.(*conn).serve.func1(0xc4204561e0)
/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x11c9fa0, 0x225f590)
/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc4204e7360, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc4200f8751, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc4201a01e0, 0x7fa28ab893f0, 0xc4208d8150, 0xc4204bc400)
/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x7fa28ab893f0, 0xc4208d8150, 0xc4204bc400)
/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc4201ac2e0, 0x7fa28ab893f0, 0xc4208d8150, 0xc4204bc400)
/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42019e4d0, 0x7fa28ab893f0, 0xc4208d8150, 0xc4204bc400)
/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ce120, 0x7fa28ab893f0, 0xc4208d8150, 0xc4204bc200)
/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x21d0a60, 0xc42000e018, 0x21cfd20, 0xc4201ce120, 0x21d7960, 0xc42031c000, 0xc4204bc200)
/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc42019d460, 0x21d7960, 0xc42031c000, 0xc4204bc200)
:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cf20, 0x21d7960, 0xc42031c000, 0xc4204bc200)
/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc4204561e0, 0x21d82a0, 0xc4201d8380)
/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2668 +0x2ce
2018/03/23 10:07:10 http: panic serving 1.2.3.4:65097: runtime error: invalid memory address or nil pointer dereference
goroutine 2657 [running]:
net/http.(*conn).serve.func1(0xc4204450e0)
/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x11c9fa0, 0x225f590)
/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc420286ab0, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc4200f8751, 0x9, 0x21d1460, 0xc420062c60, 0x21cd460, 0xc42019c280, 0xc420192ab0, 0xc420068600, 0x2, 0x5, ...)
/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc4201a01e0, 0x7fa28ab893f0, 0xc420253da0, 0xc4201e4700)
/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x7fa28ab893f0, 0xc420253da0, 0xc4201e4700)
/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc4201ac2e0, 0x7fa28ab893f0, 0xc420253da0, 0xc4201e4700)
/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42019e4d0, 0x7fa28ab893f0, 0xc420253da0, 0xc4201e4700)
/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ce120, 0x7fa28ab893f0, 0xc420253da0, 0xc4201e4500)
/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x21d0a60, 0xc42000e018, 0x21cfd20, 0xc4201ce120, 0x21d7960, 0xc42045c0e0, 0xc4201e4500)
/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc42019d460, 0x21d7960, 0xc42045c0e0, 0xc4201e4500)
:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cf20, 0x21d7960, 0xc42045c0e0, 0xc4201e4500)
/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc4204450e0, 0x21d82a0, 0xc4203aa340)
/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
/usr/local/go/src/net/http/server.go:2668 +0x2ce

Build end-user community

If you'd like to have your company represented and are using Komiser please give formal written permission below via a comment and email to [email protected].

We will need a URL to a svg or png logo, a text title and a company URL.

Instances per Region in map

Hi,
Please see if you can add the number of Instance per Region in the map and also if the circles don't overlap

Use case?

I got here from the post on HN. After reading the intro around cost optimization I got the impression Komiser could be use for finding unused resources in aws, but as I read more it doesn't do that - its a "condensed" view of all aws resources, is that right? I still don't have a full grasp on the actual use case - it would be awesome if komiser for instance would report on security groups that arent used anywhere, disconnected EBS volumes, snapshots that point to non-existing instance, buckets that havent been read from / written to in the last x amount of days - stuff like that.

No data for storage

In the Storage tab, there is no data for:
S3 Size, S3 Objects, Empty buckets, S3 Bucket size, S3 Bucket objects. Also clicking on the issue under the Bell icon takes me back to the dashboard without displaying further info.
Alarms tab is shining in red, but it is not providing any further information.

Ability To Specify An AWS Profile

Currently if you run komiser and use the Shared Credentials File (~/.aws/credentials) it only uses the default credentials. If the shared credentials contains multiple accounts there is no easy way to switch between.

Snapshots count and size include public snapshots

I've just discovered this project and it's really cool ๐Ÿ‘

Something I noticed is the snapshots count and size include public snapshots - ideally these numbers should be limited to private snapshots.

screen shot 2018-03-20 at 16 30 18

Permissions issues (Support cases, S3 Objects, ECS clusters, etc) - Docker on ECS

Hiya - love the app and dashboard. Running into some issues similar to #85 and other permissions issues.

I can't see ECS clusters, S3 object size, number of support cases, etc. I have attached your komiser policy to the ECS workspace role and most of the permissions are working!

image

Permission issues shown. 0 bucket size for s3 shown.

I am deploying on ECS Fargate, with a task definition attached.

Logs showing 500 errors:
image

Task def json:

[
    {
        "name": "komiser-task-def",
        "image": "<acc_name>.dkr.ecr.us-west-2.amazonaws.com/komiser:latest",
        "cpu": 512,
        "memory": 1024,
        "essential": true,
        "portMappings": [
            {
                "containerPort": 80,
                "hostPort": 80,
                "protocol": "tcp"
            },
            {
                "containerPort": 3000,
                "hostPort": 3000,
                "protocol": "tcp"
            }
        ],
        "logConfiguration": {
            "logDriver": "awslogs",
            "options": {
                "awslogs-group": "/aws/ecs/komiser",
                "awslogs-region": "us-west-2",
                "awslogs-stream-prefix": "komiser"
            }
        },
        "healthCheck": {
            "command": ["CMD-SHELL", "curl -f http://localhost || exit 1"],
            "interval": 30,
            "retries": 2,
            "timeout": 5
        },

        "environment": [
                    {
                        "name":"PORT",
                        "value":"80"
                    },
                    {
                        "name":"AWS_DEFAULT_REGION",
                        "value":"us-west-2"
                    }

                ],

        "mountPoints": [],
        "volumesFrom": []
    }
]

AMI Count

Hi,
Please add a widget for the AMI Count

Incorrect values for Spot instances amount

Hey,
I'm analyzing my AWS account, and seems like the Spot instances aren't being discovered well.

I'm getting 0 spot instances, while in fact I have 58 Spot instance running
image
I'm using Spot through Launch template & using Spotinst (IDK how they are utilizing them)

image

GuardDuty monitoring

Not sure if this is possible with but it might be a good idea to include a quick view of the guard duty alerts that are currently on the account, probably broken down by severity.

Multiple regions in my aws account.

Hi,

We have multiple Ec2 instances and S3 buckets in multiple regions in one account. Can I monitor all regions resources from this komiser tool?
Please also tell us, Can we monitor multiple accounts from a single komiser tool?

can`t set ~/.aws/credentials in Docker

Hello,

I'm trying to set ~/.aws/credentials in a docker environment.

when I try to save Access Key ID and Secret Access Key to ~/.aws/credentials I get an error:

sh: can't create /root/.aws/credentials: nonexistent directory

Mixed content

I am getting mixed content in Chrome, meaning resources are fetched with http instead of https.

image

500 errors for a lot of services

Hey there,

I've tried setting up an instance of Komiser, but am getting 500 errors for a lot of services:

  • iam/account
  • cloudwatch/alarms
  • ec2/regions
  • resources/regions
  • support/open
  • support/history

I made sure to create a policy using what is recommended in the readme: https://raw.githubusercontent.com/mlabouardy/komiser/master/policy.json

If I grant all permission to everything, a number of these still fail.

Additionally, the notifications seem to do nothing. I can click on them, and it sends me to https://<domain>/#

Example log lines:

2019/05/21 14:18:13 Using in-memory cache
127.0.0.1 - - [21/May/2019:14:18:17 -0700] "GET / HTTP/1.0" 200 2856
127.0.0.1 - - [21/May/2019:14:18:17 -0700] "GET /styles.97e9f56065354e4bba5b.bundle.css HTTP/1.0" 200 643
127.0.0.1 - - [21/May/2019:14:18:17 -0700] "GET /inline.31e1fb380eb7cf3d75b1.bundle.js HTTP/1.0" 200 798
127.0.0.1 - - [21/May/2019:14:18:17 -0700] "GET /polyfills.8e93ac3f450806a119ad.bundle.js HTTP/1.0" 200 63719
127.0.0.1 - - [21/May/2019:14:18:17 -0700] "GET /main.2b30d8bea6538f6668bc.bundle.js HTTP/1.0" 200 271491
127.0.0.1 - - [21/May/2019:14:18:17 -0700] "GET /scripts.da8efe539c15fe8a4dea.bundle.js HTTP/1.0" 200 645368
127.0.0.1 - - [21/May/2019:14:18:17 -0700] "GET /vendor.b60046ecc55996eda3e0.bundle.js HTTP/1.0" 200 1789012
127.0.0.1 - - [21/May/2019:14:18:19 -0700] "GET /aws/cloudwatch/alarms HTTP/1.0" 500 48
127.0.0.1 - - [21/May/2019:14:18:19 -0700] "GET /aws/ec2/regions HTTP/1.0" 500 44
127.0.0.1 - - [21/May/2019:14:18:19 -0700] "GET /aws/resources/regions HTTP/1.0" 500 39
127.0.0.1 - - [21/May/2019:14:18:19 -0700] "GET /aws/cloudwatch/alarms HTTP/1.0" 500 48
127.0.0.1 - - [21/May/2019:14:18:19 -0700] "GET /aws/iam/account HTTP/1.0" 500 34
127.0.0.1 - - [21/May/2019:14:18:19 -0700] "GET /aws/iam/users HTTP/1.0" 200 2
127.0.0.1 - - [21/May/2019:14:18:19 -0700] "GET /aws/support/open HTTP/1.0" 500 44
127.0.0.1 - - [21/May/2019:14:18:19 -0700] "GET /aws/support/history HTTP/1.0" 500 44
127.0.0.1 - - [21/May/2019:14:18:19 -0700] "GET /aws/cost/current HTTP/1.0" 200 17
127.0.0.1 - - [21/May/2019:14:18:19 -0700] "GET /aws/cost/history HTTP/1.0" 200 11114
127.0.0.1 - - [21/May/2019:14:18:19 -0700] "GET /aws/cost/forecast HTTP/1.0" 200 19

Environment info:
Platform: AWS
Instance type: t3.small
OS: Ubuntu 16.04
Komiser version: 2.1.0
Using in-memory cache
Nginx reverse proxying to localhost:3000 with an SSL cert, version 1.16.0

question: EBS Size in storage tab

Why it shows such a small number?
In my case it shows 5 Gb in one account and 1 Gb in other. In fact I have 45 volumes ( 1Gb - to 100 Gb real size)

[ turns into ร†

Hi @mlabouardy while passing the credentials file into the docker container with this command:

docker run -d -p 3000:3000 -v $HOME/.aws/credentials:/root/.aws/credentials --name komiser mlabouardy/komiser:2.1.0

the [default] sections of the credentials file turns into ร†defaultร†

Azure

The Readme page states it works with Azure. But I couldn't find how to make it work.

Get a deep understanding of how you spend on the AWS, GCP and Azure.

Thx

<aws permission> is missing

Hi,
Running 2.1.0 in an amazon-linux instance from my VPC I'm seeing 0 instead of the numbers I would expect, and many errors like so:

cloudwatch:DescribeAlarms is missing 5 14 minutes ago
iam:GetUser is missing 21 minutes ago
ec2:DescribeInstances is missing 11 14 minutes ago
tag:GetResources is missing 4 14 minutes ago
support:DescribeCases is missing 8 14 minutes ago
ec2:DescribeElasticIPs is missing 7 14 minutes ago
lambda:ListFunctions is missing 7 14 minutes ago
ecs:DescribeClusters or ecs:DescribeTasks or ecs:DescribeServices is missing 7 14 minutes ago
cloudwatch:GetMetricStatistics is missing 57 14 minutes ago
ec2:DescribeReservedInstances is missing 7 14 minutes ago
ec2:DescribeSpotFleetRequests is missing 7 14 minutes ago
ec2:DescribeScheduledInstances is missing 7 14 minutes ago
eks:ListClusters is missing 7 14 minutes ago
s3:ListAllMyBuckets is missing

Here are the permissions applied in the instance profile:

{
"Version": "2012-10-17",
"Statement": [
{
"Sid": "1",
"Effect": "Allow",
"Action": [
"ec2:DescribeRegions",
"ec2:DescribeInstances",
"ec2:DescribeVolumes",
"ec2:DescribeVpcs",
"ec2:DescribeSecurityGroups",
"ec2:DescribeNatGateways",
"ec2:DescribeRouteTables",
"ec2:DescribeSnapshots",
"ec2:DescribeNetworkAcls",
"ec2:DescribeKeyPairs",
"ec2:DescribeInternetGateways"
],
"Resource": ""
},
{
"Sid": "2",
"Effect": "Allow",
"Action": [
"ec2:DescribeAddresses",
"ec2:DescribeSnapshots",
"elasticloadbalancing:DescribeLoadBalancers",
"autoscaling:DescribeAutoScalingGroups",
"ce:GetCostAndUsage",
"s3:ListAllMyBuckets",
"apigateway:GET",
"support:DescribeTrustedAdvisorCheckResult"
],
"Resource": "
"
},
{
"Sid": "3",
"Effect": "Allow",
"Action": [
"lambda:ListFunctions",
"dynamodb:ListTables",
"dynamodb:DescribeTable",
"rds:DescribeDBInstances",
"cloudwatch:DescribeAlarms",
"cloudfront:ListDistributions",
"ecs:DescribeClusters",
"ecs:DescribeServices",
"ecs:DescribeTasks"
],
"Resource": ""
},
{
"Sid": "4",
"Effect": "Allow",
"Action": [
"sqs:ListQueues",
"route53:ListHostedZones",
"sns:ListTopics",
"iam:ListGroups",
"iam:ListRoles",
"iam:ListPolicies",
"iam:ListUsers"
],
"Resource": "
"
},
{
"Sid": "5",
"Effect": "Allow",
"Action": [
"acm:ListCertificates",
"mq:ListBrokers",
"cloudwatch:GetMetricStatistics",
"cloudtrail:LookupEvents",
"ce:GetCostAndUsage",
"ce:GetCostForecast",
"datapipeline:ListPipelines",
"ec2:DescribeReservedInstances",
"ec2:DescribeSpotFleetRequests",
"ec2:DescribeScheduledInstances",
"eks:ListClusters",
"elasticache:DescribeCacheClusters",
"es:ListDomainNames",
"cloudwatchlogs:DescribeLogGroups"
],
"Resource": ""
},
{
"Sid": "6",
"Effect": "Allow",
"Action": [
"glue:GetCrawlers",
"glue:GetJobs",
"organizations:DescribeOrganization",
"iam:GetUser",
"kinesis:ListStreams",
"kinesis:ListShards",
"kms:ListKeys",
"redshift:DescribeClusters",
"tag:GetResources",
"route53:ListResourceRecordSets",
"s3:ListAllMyBuckets",
"support:DescribeCases",
"support:DescribeTrustedAdvisorChecks",
"swf:ListDomains"
],
"Resource": "
"
}
]
}

After ssh-ing to the instance, I am able to use awscli to successfully call apis that the UI is complaining about not having permissions for.

AWS IAM role does not work

komiser is in eks.
Policy and role created. Trusted entities - correct ( EKS cluster). Same as for other services.

apiVersion: apps/v1 kind: Deployment metadata: creationTimestamp: null labels: app: komiser name: komiser namespace: monitoring-core spec: replicas: 1 selector: matchLabels: app: komiser strategy: {} template: metadata: annotations: iam.amazonaws.com/role: arn:aws:iam::XXXXXXXXXX:role/komiser-aws-overview creationTimestamp: null labels: app: komiser spec: containers: - image: mlabouardy/komiser:latest name: komiser ports: - containerPort: 3000 name: http protocol: TCP

  • service + ingress. Works fine.
    Pod has a role assigned :

Name: komiser-6d85967d85-scn9t Namespace: monitoring-core Priority: 0 PriorityClassName: <none> Node: ip-10-120-70-200.eu-west-1.compute.internal/10.120.70.200 Start Time: Fri, 24 May 2019 15:56:54 +0200 Labels: app=komiser pod-template-hash=6d85967d85 Annotations: iam.amazonaws.com/role: arn:aws:iam::XXXXXXXXXX:role/komiser-aws-overview Status: Running

Some data is displayed ( number of users, billing info on a start page) , but lots of important info is missing. Some errors:

You have 13 new notification
cloudwatch:DescribeAlarms is missing
219 minutes ago
ec2:DescribeInstances is missing
219 minutes ago
tag:GetResources is missing
19 minutes ago
iam:GetUser is missing
19 minutes ago
support:DescribeCases is missing
219 minutes ago
cloudwatch:GetMetricStatistics is missing
219 minutes ago
ec2:DescribeElasticIPs is missing
19 minutes ago
lambda:ListFunctions is missing
19 minutes ago
ecs:DescribeClusters or ecs:DescribeTasks or ecs:DescribeServices is missing
19 minutes ago
ec2:DescribeScheduledInstances is missing
19 minutes ago
ec2:DescribeSpotFleetRequests is missing
19 minutes ago
ec2:DescribeReservedInstances is missing
19 minutes ago
eks:ListClusters is missing
19 minutes ago

Request to /costs failing

Hi there, thanks for nice tool

when i run it, i get this on /costs request:

172.18.0.3 - - [29/Mar/2018:09:34:45 +0000] "GET /cost HTTP/1.1" 500 41
2018/03/29 09:34:49 http: panic serving 172.18.0.3:37096: runtime error: invalid memory address or nil pointer dereference
goroutine 677 [running]:
net/http.(*conn).serve.func1(0xc420a8abe0)
	/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x11c9fa0, 0x225f590)
	/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc420aaa190, 0xe, 0x21d1460, 0xc420010c00, 0x21cd460, 0xc420174440, 0xc420146f30, 0xc420056600, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc42000c073, 0x9, 0x21d1460, 0xc420010c00, 0x21cd460, 0xc420174440, 0xc420146f30, 0xc420056600, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc4201761e0, 0x7f5535192378, 0xc420abbc20, 0xc42018e500)
	/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x7f5535192378, 0xc420abbc20, 0xc42018e500)
	/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc4200e7250, 0x7f5535192378, 0xc420abbc20, 0xc42018e500)
	/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42014ad20, 0x7f5535192378, 0xc420abbc20, 0xc42018e500)
	/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc42012def0, 0x7f5535192378, 0xc420abbc20, 0xc42018e100)
	/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x21d0a60, 0xc42000e018, 0x21cfd20, 0xc42012def0, 0x21d7960, 0xc420300620, 0xc42018e100)
	/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc420175620, 0x21d7960, 0xc420300620, 0xc42018e100)
	<autogenerated>:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42012ee70, 0x21d7960, 0xc420300620, 0xc42018e100)
	/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc420a8abe0, 0x21d82a0, 0xc420acb880)
	/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
	/usr/local/go/src/net/http/server.go:2668 +0x2ce

This happens on multiple non-related accounts, so problem seems to be in code.
Using :latest from docker hub.

`http: panic serving [::1]:64735: runtime error: invalid memory address or nil pointer dereference`

Process:
wget https://s3.us-east-1.amazonaws.com/komiser/1.0.0/osx/komiser
chmod +X komiser
sudo ./komiser start --port 3000 --duration 30

Visit http://localhost:3000 in browser

Results:

::1 - - [03/Apr/2018:10:50:24 -0400] "GET / HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /styles.05d4aeeb77605b05dbf9.bundle.css HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /inline.47d04ba836b188db631f.bundle.js HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /polyfills.abdf53ca655716e505e0.bundle.js HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /main.8097dd79d6203e629625.bundle.js HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /vpc HTTP/1.1" 200 2
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /acl HTTP/1.1" 200 2
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /security_group HTTP/1.1" 200 3
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /nat HTTP/1.1" 200 1
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /internet_gateway HTTP/1.1" 200 2
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /eip HTTP/1.1" 200 2
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /key_pair HTTP/1.1" 200 2
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /route_table HTTP/1.1" 200 2
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /dynamodb HTTP/1.1" 200 66
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /ebs HTTP/1.1" 200 81
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /cost HTTP/1.1" 200 707
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /snapshot HTTP/1.1" 200 27
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /lambda HTTP/1.1" 200 90
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /elb HTTP/1.1" 200 32
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /sqs HTTP/1.1" 200 3
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /sns HTTP/1.1" 200 2
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /hosted_zone HTTP/1.1" 200 2
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /cloudwatch HTTP/1.1" 200 42
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /iam/role HTTP/1.1" 200 3
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /iam/group HTTP/1.1" 200 2
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /iam/policy HTTP/1.1" 200 3
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /iam/user HTTP/1.1" 200 2
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /cloudfront HTTP/1.1" 200 2
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /s3 HTTP/1.1" 200 3
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /ec2 HTTP/1.1" 200 568
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/s3.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/snapshot.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/logo.svg HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/snapshot_size.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/user.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/ebs.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/role.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/group.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/policy.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/distribution.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/vpc.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/acl.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/sg.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/nat.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/igw.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/eip.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/keypair.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/asg.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/route_table.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/cluster.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/service.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/task.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/rds.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/dynamodb.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/dynamodb_write.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/dynamodb_read.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/sqs.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/sns.png HTTP/1.1" 304 0
::1 - - [03/Apr/2018:10:50:25 -0400] "GET /assets/images/hostedzone.png HTTP/1.1" 304 0
2018/04/03 10:50:48 http: panic serving [::1]:64730: runtime error: invalid memory address or nil pointer dereference
goroutine 2254 [running]:
net/http.(*conn).serve.func1(0xc4204fac80)
	/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x1dd3740, 0x2e70730)
	/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc420359df0, 0x9, 0x2de2520, 0xc42000ed20, 0x2dde220, 0xc420184580, 0xc4201591d0, 0xc42006a580, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc42015c931, 0x9, 0x2de2520, 0xc42000ed20, 0x2dde220, 0xc420184580, 0xc4201591d0, 0xc42006a580, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc42018c1e0, 0x35a0078, 0xc420dd6ba0, 0xc420bd7a00)
	/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x35a0078, 0xc420dd6ba0, 0xc420bd7a00)
	/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc42015d6a0, 0x35a0078, 0xc420dd6ba0, 0xc420bd7a00)
	/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42015f730, 0x35a0078, 0xc420dd6ba0, 0xc420bd7a00)
	/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ca090, 0x35a0078, 0xc420dd6ba0, 0xc420bd7500)
	/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x2de1860, 0xc42000c018, 0x2de0ae0, 0xc4201ca090, 0x2de8aa0, 0xc420401180, 0xc420bd7500)
	/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc420185780, 0x2de8aa0, 0xc420401180, 0xc420bd7500)
	<autogenerated>:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cfd0, 0x2de8aa0, 0xc420401180, 0xc420bd7500)
	/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc4204fac80, 0x2de93e0, 0xc420506000)
	/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
	/usr/local/go/src/net/http/server.go:2668 +0x2ce
2018/04/03 10:51:09 http: panic serving [::1]:64734: runtime error: invalid memory address or nil pointer dereference
goroutine 2434 [running]:
net/http.(*conn).serve.func1(0xc4204fcfa0)
	/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x1dd3740, 0x2e70730)
	/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc42088ec10, 0x9, 0x2de2520, 0xc42000ed20, 0x2dde220, 0xc420184580, 0xc4201591d0, 0xc42006a580, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc42015c931, 0x9, 0x2de2520, 0xc42000ed20, 0x2dde220, 0xc420184580, 0xc4201591d0, 0xc42006a580, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc42018c1e0, 0x35a0078, 0xc420254510, 0xc420bd6800)
	/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x35a0078, 0xc420254510, 0xc420bd6800)
	/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc42015d6a0, 0x35a0078, 0xc420254510, 0xc420bd6800)
	/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42015f730, 0x35a0078, 0xc420254510, 0xc420bd6800)
	/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ca090, 0x35a0078, 0xc420254510, 0xc4200f4600)
	/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x2de1860, 0xc42000c018, 0x2de0ae0, 0xc4201ca090, 0x2de8aa0, 0xc4202d02a0, 0xc4200f4600)
	/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc420185780, 0x2de8aa0, 0xc4202d02a0, 0xc4200f4600)
	<autogenerated>:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cfd0, 0x2de8aa0, 0xc4202d02a0, 0xc4200f4600)
	/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc4204fcfa0, 0x2de93e0, 0xc420506280)
	/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
	/usr/local/go/src/net/http/server.go:2668 +0x2ce
2018/04/03 10:51:22 http: panic serving [::1]:64731: runtime error: invalid memory address or nil pointer dereference
goroutine 2255 [running]:
net/http.(*conn).serve.func1(0xc4204fad20)
	/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x1dd3740, 0x2e70730)
	/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc420646340, 0x9, 0x2de2520, 0xc42000ed20, 0x2dde220, 0xc420184580, 0xc4201591d0, 0xc42006a580, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc42015c931, 0x9, 0x2de2520, 0xc42000ed20, 0x2dde220, 0xc420184580, 0xc4201591d0, 0xc42006a580, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc42018c1e0, 0x35a0078, 0xc420786c60, 0xc42025ce00)
	/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x35a0078, 0xc420786c60, 0xc42025ce00)
	/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc42015d6a0, 0x35a0078, 0xc420786c60, 0xc42025ce00)
	/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42015f730, 0x35a0078, 0xc420786c60, 0xc42025ce00)
	/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ca090, 0x35a0078, 0xc420786c60, 0xc420bd7f00)
	/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x2de1860, 0xc42000c018, 0x2de0ae0, 0xc4201ca090, 0x2de8aa0, 0xc4202d0fc0, 0xc420bd7f00)
	/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc420185780, 0x2de8aa0, 0xc4202d0fc0, 0xc420bd7f00)
	<autogenerated>:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cfd0, 0x2de8aa0, 0xc4202d0fc0, 0xc420bd7f00)
	/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc4204fad20, 0x2de93e0, 0xc420788100)
	/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
	/usr/local/go/src/net/http/server.go:2668 +0x2ce
2018/04/03 10:51:34 http: panic serving [::1]:64732: runtime error: invalid memory address or nil pointer dereference
goroutine 2470 [running]:
net/http.(*conn).serve.func1(0xc4201ce000)
	/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x1dd3740, 0x2e70730)
	/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc4203f0650, 0x9, 0x2de2520, 0xc42000ed20, 0x2dde220, 0xc420184580, 0xc4201591d0, 0xc42006a580, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc42015c931, 0x9, 0x2de2520, 0xc42000ed20, 0x2dde220, 0xc420184580, 0xc4201591d0, 0xc42006a580, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc42018c1e0, 0x35a0078, 0xc4214493e0, 0xc4200c6a00)
	/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x35a0078, 0xc4214493e0, 0xc4200c6a00)
	/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc42015d6a0, 0x35a0078, 0xc4214493e0, 0xc4200c6a00)
	/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42015f730, 0x35a0078, 0xc4214493e0, 0xc4200c6a00)
	/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ca090, 0x35a0078, 0xc4214493e0, 0xc4200c7200)
	/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x2de1860, 0xc42000c018, 0x2de0ae0, 0xc4201ca090, 0x2de8aa0, 0xc4204100e0, 0xc4200c7200)
	/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc420185780, 0x2de8aa0, 0xc4204100e0, 0xc4200c7200)
	<autogenerated>:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cfd0, 0x2de8aa0, 0xc4204100e0, 0xc4200c7200)
	/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc4201ce000, 0x2de93e0, 0xc420506100)
	/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
	/usr/local/go/src/net/http/server.go:2668 +0x2ce
2018/04/03 10:51:54 http: panic serving [::1]:64735: runtime error: invalid memory address or nil pointer dereference
goroutine 2472 [running]:
net/http.(*conn).serve.func1(0xc4201ce140)
	/usr/local/go/src/net/http/server.go:1721 +0xd0
panic(0x1dd3740, 0x2e70730)
	/usr/local/go/src/runtime/panic.go:489 +0x2cf
github.com/mlabouardy/komiser/services.AWS.getAutoScalingGroups(0xc4209f0cd0, 0x9, 0x2de2520, 0xc42000ed20, 0x2dde220, 0xc420184580, 0xc4201591d0, 0xc42006a580, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:40 +0x3ee
github.com/mlabouardy/komiser/services.AWS.DescribeAutoScalingGroups(0xc42015c931, 0x9, 0x2de2520, 0xc42000ed20, 0x2dde220, 0xc420184580, 0xc4201591d0, 0xc42006a580, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/autoscaling.go:16 +0x10c
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler(0xc42018c1e0, 0x35a0078, 0xc420243050, 0xc4200c6b00)
	/go/src/github.com/mlabouardy/komiser/handlers/ec2_handler.go:29 +0xe6
github.com/mlabouardy/komiser/handlers.(*AWSHandler).AutoScalingGroupHandler-fm(0x35a0078, 0xc420243050, 0xc4200c6b00)
	/go/src/github.com/mlabouardy/komiser/main.go:43 +0x48
net/http.HandlerFunc.ServeHTTP(0xc42015d6a0, 0x35a0078, 0xc420243050, 0xc4200c6b00)
	/usr/local/go/src/net/http/server.go:1942 +0x44
github.com/gorilla/mux.(*Router).ServeHTTP(0xc42015f730, 0x35a0078, 0xc420243050, 0xc4200c6b00)
	/go/src/github.com/gorilla/mux/mux.go:159 +0x101
github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4201ca090, 0x35a0078, 0xc420243050, 0xc4200f4200)
	/go/src/github.com/gorilla/handlers/cors.go:51 +0xa6f
github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x2de1860, 0xc42000c018, 0x2de0ae0, 0xc4201ca090, 0x2de8aa0, 0xc420249ce0, 0xc4200f4200)
	/go/src/github.com/gorilla/handlers/handlers.go:69 +0x121
github.com/gorilla/handlers.(*loggingHandler).ServeHTTP(0xc420185780, 0x2de8aa0, 0xc420249ce0, 0xc4200f4200)
	<autogenerated>:8 +0x86
net/http.serverHandler.ServeHTTP(0xc42013cfd0, 0x2de8aa0, 0xc420249ce0, 0xc4200f4200)
	/usr/local/go/src/net/http/server.go:2568 +0x92
net/http.(*conn).serve(0xc4201ce140, 0x2de93e0, 0xc420c2a280)
	/usr/local/go/src/net/http/server.go:1825 +0x612
created by net/http.(*Server).Serve
	/usr/local/go/src/net/http/server.go:2668 +0x2ce

Environment:
OSX 10.13.3
Go 1.10
Docker 18.03.0-ce

Resources reported as 'missing'

While most of functionality is available, with IAM permission set provided in https://raw.githubusercontent.com/mlabouardy/komiser/master/policy.json, Komiser (2.1.0) is reporting several resources as missing.

support:DescribeCases is missing
cloudwatchlogs:DescribeLogGroups is missing
cloudwatch:GetMetricStatistics is missing
apigateway:GET is missing

There is following exception showing up in logs:

10.2.6.12 - - [14/May/2019:10:57:57 +0000] "GET / HTTP/1.1" 200 2856
2019/05/14 10:57:57 http: panic serving 172.30.87.165:48326: runtime error: invalid memory address or nil pointer dereference
goroutine 245 [running]:
net/http.(*conn).serve.func1(0xc420952460)
	/usr/local/go/src/net/http/server.go:1726 +0xd0
panic(0x1e62be0, 0x44268a0)
	/usr/local/go/src/runtime/panic.go:502 +0x229
github.com/mlabouardy/komiser/services/aws.AWS.DescribeIAMUser(0xc4203fcff0, 0xc, 0x2570100, 0xc4200f5260, 0x256d000, 0xc420402160, 0xc4202f69f0, 0xc4201a2200, 0x2, 0x5, ...)
	/go/src/github.com/mlabouardy/komiser/services/aws/iam.go:49 +0x203
github.com/mlabouardy/komiser/handlers/aws.(*AWSHandler).IAMUserHandler(0xc4202963c0, 0x7f1071d47318, 0xc4209ff4a0, 0xc42001c900)
	/go/src/github.com/mlabouardy/komiser/handlers/aws/iam_handler.go:72 +0xf9
github.com/mlabouardy/komiser/handlers/aws.(*AWSHandler).IAMUserHandler-fm(0x7f1071d47318, 0xc4209ff4a0, 0xc42001c900)
	/go/src/github.com/mlabouardy/komiser/main.go:37 +0x48
net/http.HandlerFunc.ServeHTTP(0xc4203b8860, 0x7f1071d47318, 0xc4209ff4a0, 0xc42001c900)
	/usr/local/go/src/net/http/server.go:1947 +0x44
github.com/mlabouardy/komiser/vendor/github.com/gorilla/mux.(*Router).ServeHTTP(0xc4203bf110, 0x7f1071d47318, 0xc4209ff4a0, 0xc42001c900)
	/go/src/github.com/mlabouardy/komiser/vendor/github.com/gorilla/mux/mux.go:162 +0xed
github.com/mlabouardy/komiser/vendor/github.com/gorilla/handlers.(*cors).ServeHTTP(0xc4204aac60, 0x7f1071d47318, 0xc4209ff4a0, 0xc42001c600)
	/go/src/github.com/mlabouardy/komiser/vendor/github.com/gorilla/handlers/cors.go:51 +0xa2e
github.com/mlabouardy/komiser/vendor/github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x256fac0, 0xc42000e018, 0x256eec0, 0xc4204aac60, 0x2578ea0, 0xc42048a0e0, 0xc42001c600)
	/go/src/github.com/mlabouardy/komiser/vendor/github.com/gorilla/handlers/handlers.go:69 +0x123
net/http.serverHandler.ServeHTTP(0xc42025ed00, 0x2578ea0, 0xc42048a0e0, 0xc42001c600)
	/usr/local/go/src/net/http/server.go:2694 +0xbc
net/http.(*conn).serve(0xc420952460, 0x25798a0, 0xc420558b00)
	/usr/local/go/src/net/http/server.go:1830 +0x651
created by net/http.(*Server).Serve
	/usr/local/go/src/net/http/server.go:2795 +0x27b

but I think this is unrelated and is consequence of k8s health check simply pointing GET to /

Most of these requests are logged simply as:

172.30.119.34 - - [15/May/2019:12:44:02 +0000] "GET /aws/vpc/subnets HTTP/1.1" 500 42
172.30.119.34 - - [15/May/2019:12:43:50 +0000] "GET /aws/apigateway/apis HTTP/1.1" 500 37

Applied IAM policy matches the one from docs:

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "1",
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeRegions",
                "ec2:DescribeInstances",
                "ec2:DescribeVolumes",
                "ec2:DescribeVpcs",
                "ec2:DescribeSecurityGroups",
                "ec2:DescribeNatGateways",
                "ec2:DescribeRouteTables",
                "ec2:DescribeSnapshots",
                "ec2:DescribeNetworkAcls",
                "ec2:DescribeKeyPairs",
                "ec2:DescribeInternetGateways"
            ],
            "Resource": "*"
        },
        {
            "Sid": "2",
            "Effect": "Allow",
            "Action": [
                "ec2:DescribeAddresses",
                "ec2:DescribeSnapshots",
                "elasticloadbalancing:DescribeLoadBalancers",
                "autoscaling:DescribeAutoScalingGroups",
                "ce:GetCostAndUsage",
                "s3:ListAllMyBuckets"
            ],
            "Resource": "*"
        },
        {
            "Sid": "3",
            "Effect": "Allow",
            "Action": [
                "lambda:ListFunctions",
                "dynamodb:ListTables",
                "dynamodb:DescribeTable",
                "rds:DescribeDBInstances",
                "cloudwatch:DescribeAlarms",
                "cloudfront:ListDistributions",
                "ecs:DescribeClusters",
                "ecs:DescribeServices",
                "ecs:DescribeTasks"
            ],
            "Resource": "*"
        },
        {
            "Sid": "4",
            "Effect": "Allow",
            "Action": [
                "sqs:ListQueues",
                "route53:ListHostedZones",
                "sns:ListTopics",
                "iam:ListGroups",
                "iam:ListRoles",
                "iam:ListPolicies",
                "iam:ListUsers"
            ],
            "Resource": "*"
        },
        {
            "Sid": "5",
            "Effect": "Allow",
            "Action": [
                "acm:ListCertificates",
                "mq:ListBrokers",
                "cloudwatch:GetMetricStatistics",
                "cloudtrail:LookupEvents",
                "ce:GetCostAndUsage",
                "ce:GetCostForecast",
                "datapipeline:ListPipelines",
                "ec2:DescribeReservedInstances",
                "ec2:DescribeSpotFleetRequests",
                "ec2:DescribeScheduledInstances",
                "eks:ListClusters",
                "elasticache:DescribeCacheClusters",
                "es:ListDomainNames"
            ],
            "Resource": "*"
        },
        {
            "Sid": "6",
            "Effect": "Allow",
            "Action": [
                "glue:GetCrawlers",
                "glue:GetJobs",
                "organizations:DescribeOrganization",
                "iam:GetUser",
                "kinesis:ListStreams",
                "kinesis:ListShards",
                "kms:ListKeys",
                "redshift:DescribeClusters",
                "tag:GetResources",
                "route53:ListResourceRecordSets",
                "s3:ListAllMyBuckets",
                "support:DescribeCases",
                "support:DescribeTrustedAdvisorChecks",
                "swf:ListDomains"
            ],
            "Resource": "*"
        }
    ]
}

runtime error: invalid memory address or nil pointer dereference

komiser_1  | 2019/05/17 10:57:25 http: panic serving 172.19.0.1:33872: runtime error: invalid memory address or nil pointer dereference
komiser_1  | goroutine 192 [running]:
komiser_1  | net/http.(*conn).serve.func1(0xc4203d4f00)
komiser_1  | 	/usr/local/go/src/net/http/server.go:1726 +0xd0
komiser_1  | panic(0x1e62be0, 0x44268a0)
komiser_1  | 	/usr/local/go/src/runtime/panic.go:502 +0x229
komiser_1  | github.com/mlabouardy/komiser/services/aws.AWS.DescribeIAMUser(0x0, 0x0, 0x2570100, 0xc420140f00, 0x256d000, 0xc420396180, 0xc4203289c0, 0xc420156200, 0x2, 0x5, ...)
komiser_1  | 	/go/src/github.com/mlabouardy/komiser/services/aws/iam.go:49 +0x203
komiser_1  | github.com/mlabouardy/komiser/handlers/aws.(*AWSHandler).IAMUserHandler(0xc4202403c0, 0x7fc389e1be30, 0xc4200daae0, 0xc4200d3d00)
komiser_1  | 	/go/src/github.com/mlabouardy/komiser/handlers/aws/iam_handler.go:72 +0xf9
komiser_1  | github.com/mlabouardy/komiser/handlers/aws.(*AWSHandler).IAMUserHandler-fm(0x7fc389e1be30, 0xc4200daae0, 0xc4200d3d00)
komiser_1  | 	/go/src/github.com/mlabouardy/komiser/main.go:37 +0x48
komiser_1  | net/http.HandlerFunc.ServeHTTP(0xc420362860, 0x7fc389e1be30, 0xc4200daae0, 0xc4200d3d00)
komiser_1  | 	/usr/local/go/src/net/http/server.go:1947 +0x44
komiser_1  | github.com/mlabouardy/komiser/vendor/github.com/gorilla/mux.(*Router).ServeHTTP(0xc4203670a0, 0x7fc389e1be30, 0xc4200daae0, 0xc4200d3d00)
komiser_1  | 	/go/src/github.com/mlabouardy/komiser/vendor/github.com/gorilla/mux/mux.go:162 +0xed
komiser_1  | github.com/mlabouardy/komiser/vendor/github.com/gorilla/handlers.(*cors).ServeHTTP(0xc42044cc60, 0x7fc389e1be30, 0xc4200daae0, 0xc4200d3b00)
komiser_1  | 	/go/src/github.com/mlabouardy/komiser/vendor/github.com/gorilla/handlers/cors.go:51 +0xa2e
komiser_1  | github.com/mlabouardy/komiser/vendor/github.com/gorilla/handlers.loggingHandler.ServeHTTP(0x256fac0, 0xc4200b2008, 0x256eec0, 0xc42044cc60, 0x2578ea0, 0xc420581dc0, 0xc4200d3b00)
komiser_1  | 	/go/src/github.com/mlabouardy/komiser/vendor/github.com/gorilla/handlers/handlers.go:69 +0x123
komiser_1  | net/http.serverHandler.ServeHTTP(0xc420209380, 0x2578ea0, 0xc420581dc0, 0xc4200d3b00)
komiser_1  | 	/usr/local/go/src/net/http/server.go:2694 +0xbc
komiser_1  | net/http.(*conn).serve(0xc4203d4f00, 0x25798a0, 0xc4202c0440)
komiser_1  | 	/usr/local/go/src/net/http/server.go:1830 +0x651
komiser_1  | created by net/http.(*Server).Serve
komiser_1  | 	/usr/local/go/src/net/http/server.go:2795 +0x27b

Roadmap

Awesome project!

I'm just wondering what your vision is for this project. I saw your todo list at the bottom of the readme but was curious if you have more in mind than that.

I'd love to contribute but just wanted to check before I end up in the bushes with a bunch of code going a direction you weren't intending to explore.

GCP Support?

Hi Guys,
I have found the following in the README ...

Get a deep understanding of how you spend on the AWS, GCP and Azure.

But I can't see anything regarding GCP, will this feature come later or missed i something?
Br Richard

AWS Policies missing + Can view all notifications

By running latest release with docker (and by setting the region var).

Getting these:
image

Furthermore, the "view all notifications" button doesn't work (nothing happens after press).

EDIT: After a refresh of the dashboard, I only get the cases policy missing only.
Also, the Alarms count (which btw, how do I view them?) changes after a refresh.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.