etsy / oculus

The metric correlation component of Etsy's Kale system
http://codeascraft.com/2013/06/11/introducing-kale/
Other
707 stars 72 forks source link

Oculus Elasticsearch RequestError IndexMissingException #10

Closed patrickshan closed 10 years ago

patrickshan commented 11 years ago

Hi there, when I tried to open the link behind the data points path in skyline which redirects me to oculus, I always get the IndexMissingException. Is that caused by the cron job which pulls data from skyline to oculus? This is my configuration file config/config.yml: root@ip-10-118-150-210:/opt/oculus/config# cat config.yml results_explain: 0 elasticsearch: servers:

jonlives commented 11 years ago

@patrick try setting the "index" parameter to "metrics". This is the name of the actual index in ES to use and is unrelated to the skyline namespace.

Your metric_prefix is correct :)

patrickshan commented 11 years ago

hi jonlives, Thanks for your reply. It seems the search function is still broken even after I changed "index".

NoMethodError at /search undefined method `fingerprint' for nil:NilClass file: elasticsearch.rb location: get_fingerprint line: 311

I am wondering if the listener_port for skyline is right. Currently I am using the webapp port for skyline in oculus configuration. Is this all right ? Or it should be some other port such as the port for horizon.

And this is the logs for import cron job: Active ES Server: http://ec2-23-2-1-156.compute-1.amazonaws.com:9201 Next ES Server: http://ec2-23-2-1-156.compute-1.amazonaws.com:9202 Recreating indexes Creating redis jobs... Getting unique metric names Found 16262 metric names 33 workers working 0 process_redis_metrics jobs left to run Setting active search server to http://ec2-23-2-1-156.compute-1.amazonaws.com:9202 Oculus import finished in 5.792149139 seconds

jonlives commented 10 years ago

@patrickshan apols for the late reply on this one - is it possible for you to check if you have any metrics in elasticsearch after the import has completed?

banzayats commented 10 years ago

I have the same problem. When I click "Collections" or perform any search I get the same error: (404) {"error":"IndexMissingException[[collections] missing]","status":404} I used plugin "head" to see if there any data in elasticsearch. Yes there is index "metrics" and it has some metrics. Besides, I've checked log files: import.log:

Active ES Server: http://logserver:9200                    
Next ES Server: http://testserver:9200                  
Recreating indexes                                                 
http://testserver:9200: metrics                         
Creating redis jobs...                                             
Getting unique metric names                                        
Found 413 metric names                                             
0 workers working                                                  
0 process_redis_metrics jobs left to run                           
Setting active search server to http://testserver:9200  
Oculus import finished in 5.373652176 seconds

resque_stdout:

I broke on mini.nginx_response_time 
...
I broke on mini.nginx_response_time 

Can someone explain why there are e lot of messages "I broke on mini.nginx_response_time" and why no workers (0) working?

jonlives commented 10 years ago

@banzayats Can you please confirm that you performed the last step in the "Web App Install" section of the README:

"The final step is to log onto the Oculus admin console (http://yourserver:3000/admin, username admin and password admin), then click "Reinitialize Collections." Click OK to confirm."

This step creates and initializes the collections index. If you've performed this step and are still seeing the above error, please let me know.

banzayats commented 10 years ago

Sorry, my fault again. So I've initialized Collections and it worked!

jonlives commented 10 years ago

Excellent!

jonlives commented 10 years ago

Closing as appears to be solved