-
Notifications
You must be signed in to change notification settings - Fork 2
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
zipkin makes tags object disabled (enable = false) when creating indices in ES #46
Comments
our index template disables the normal tag indexing for reasons including restrictions on dots. We use an alternative approach here: https://github.com/openzipkin/zipkin/tree/master/zipkin-storage/elasticsearch#query-indexing We have an example of another indexing approach here with "catch-all" used to layer a base policy. It seems to work on Elasticsearch 7.8 and 7.9, but currently breaks in 7.10 (for reasons unknown) you can look at openzipkin/zipkin#3185 for background and cc @ccharnkij and @xeraa in case you know how or why ES 7.10 would break on this.. I will raise a PR to show that in a bit (just it is annoying as we have to build a temporary image with 7.10 to show it..) |
@adriancole thank you so much for your reply. just want to know what is the reason behind it to disable the normal tag indexing? It seems like the workaround/alternative approach is only working for the ES version above 7.8, our version is still pretty old like ES 6.3, do you know any workaround for the lower version? And also do you know how the QA version of the index pattern came from? It seems like that version worked (indexing happened for tags). Again thank you so much for your help |
^^ is the summary of the why Here is an example (no warranty) of using a secondary index template. I tested it just now https://gist.github.com/adriancole/1af1259102e7a2da1b3c9103565165d7 |
@adriancole thanks so much for your help, really appreciate it !!! But I guess we are kind of blocked as we are still using ES version 6.3. I just tried to create a secondary index template but no luck. One last thing I don't understand is it seems like we first tested in QA (which seems like using a different index template version)
and the template looks like below after hitting template endpoint from our team's ES instance:
Does it ring a bell to you ? why in Prod I can't see this version ? thanks |
the trick here is that it is a secondary template, so yeah don't edit the primary one unless you replace the whole thing. We have a ES 6 image, and I switched the example to use it. It was able to work. I'm studying for a job interview so can't really dig more, I would suggest making sure the example works for you locally as it works 100% for me... upgrade your ES to a later version of 6 as ES won't support the version you are on anyway. ex.
Then compare your host output with localhost:9200/_template from docker. Also remember you must setup templates this before spans are in your index. Good luck and if this doesn't work please talk to elasticsearch support as this is not something we have any control over. |
Trying to follow along here:
|
thanks @xeraa I pulled the ES 7.10 into a separate PR. I don't have time to diagnose but put an hour towards making it diagnosable (hopefully) openzipkin/zipkin#3329 |
hey @adriancole how are you doing? just follow up with you on above index template issue, actually in our QA env, we didn't set up any secondary template and it is kind of using secondary index template by default whereas in prod it is using the primary index template which is really odd. Actually we upgrade ES to later 6 version like 6.8 version but still can't manually create secondary index template. and I have already tested the ES image 6 on my local, actually the template is consistent with PROD version, don't know why in QA we saw a secondary version. |
Describe the Bug
I set up a zipkin server to write spans to ES (our own firm setup) for both QA and PROD, it is very odd that the index mapping created for both QA and Prod is different, and for Prod the tags object field enabled is false which prevents that field being indexed when creating index pattern on ES Kibana Dashboard, but I double checked the config and zipkin server jar and they are exactly the same only the environment is different, would you mind advising where might went wrong
Attached mapping definition for both qa and prod:
Qa:
Prod:
Also Attach the PROD version (failed version) of template definition:
QA version
QA and PROD are using different ES instance, but both are using ES 6.3 version, just want to understand how to make contents under tag object be indexed, we had some customized fields defined under tag eg who hit endpoint and which env, etc and we would like to leverage those fields for filter condition when we created Kibana Dashboard.
The text was updated successfully, but these errors were encountered: