Examples: query, "exact match", wildcard*, wild?ard, wild*rd
Fuzzy search: cake~ (finds cakes, bake)
Term boost: "red velvet"^4, chocolate^2
Field grouping: tags:(+work -"fun-stuff")
Escaping: Escape characters +-&|!(){}[]^"~*?:\ with \, e.g. \+
Range search: properties.timestamp:[1587729413488 TO *] (inclusive), properties.title:{A TO Z}(excluding A and Z)
Combinations: chocolate AND vanilla, chocolate OR vanilla, (chocolate OR vanilla) NOT "vanilla pudding"
Field search: properties.title:"The Title" AND text
Answered
Hello, I Am Having A Problem That Debug Images Are Not Shown After Clearml Server Migration. I Found A Solution On This Page:

Hello, I am having a problem that debug images are not shown after ClearML server migration. I found a solution on this page: https://clear.ml/docs/latest/docs/faq/#debug-images-andor-artifacts-are-not-loading-in-the-u[…]clearml-server-to-a-new-address-how-do-i-fix-this---- But curl request provided is incomplete. It needs a URL to POST a request to. Plain elastic host it not working (localhost:9200) neither is localhost:9200/<index-name>. Any help? Thanks.

  
  
Posted 11 months ago
Votes Newest

Answers 35


Hi @<1526734383564722176:profile|BoredBat47> , do you mean new debug samples or old ones? Please note that older debug samples were registered to the previous URL

  
  
Posted 11 months ago

@<1722061389024989184:profile|ResponsiveKoala38> Hello. What if my old fileserver address was not matching the None scheme? It was http and didn't have a domain, only ip address. Should I put my old address as it was in the replace method?

  
  
Posted 11 months ago

Should I remove "case-sensitive" option from a query?

  
  
Posted 11 months ago

You'd have to change the URLs in elastic itself

  
  
Posted 11 months ago

Can you please share it as a text
It is indistinguishable visually but I want to make sure that each single quote is replaced with single quote slash single quote single quote
and not single quote slash double quote

  
  
Posted 11 months ago

@<1722061389024989184:profile|ResponsiveKoala38> Got following error. Sorry for a screenshot, I can't copy text from web terminal I am using right now.
image

  
  
Posted 11 months ago

Hi @<1526734383564722176:profile|BoredBat47> , please try to remove the ", "case_insensitive": true" from the last line of the command that I sent to you

  
  
Posted 11 months ago

A bit confusing. But this is what linux shell wants if you have single quotes inside double quotes inside outer single quotes

  
  
Posted 11 months ago

''' = ' + ' + '

  
  
Posted 11 months ago

image

  
  
Posted 11 months ago

@<1722061389024989184:profile|ResponsiveKoala38> Sure, I'll get back to you as it finishes

  
  
Posted 11 months ago

image

  
  
Posted 11 months ago

No. It is actually string concatenation. What you actually get is that an original string is broken into several parts. That are concatenated as following:
-d'{....' + ' + '....}'

  
  
Posted 11 months ago

I figured it was something with syntax but I thought single ticks inside double quotes should work without escaping 😀

  
  
Posted 11 months ago

Yeah, they should:) The problem is that they are inside outer single quotes -d'{...}'

  
  
Posted 11 months ago

curl -XPOST -H 'Content-Type: application/json' 'localhost:9200/events-training_debug_image-*/_update_by_query?conflicts=proceed' -d'{
    "script": {
        "source": "ctx._source.url = ctx._source.url.replace('http://<MY_OLD_ADDRESS>', '
.<NEW_ADDRESS>')",
        "lang": "painless"
    },
    "query": {"prefix": {"url": {"value": "http://<MY_OLD_ADDRESS>"}}}
}'
  
  
Posted 11 months ago

Great! Thanks:)

  
  
Posted 11 months ago

@<1722061389024989184:profile|ResponsiveKoala38> My bad, I was indeed using double quotes. I fixed it and now script is working. I'll wait for results

  
  
Posted 11 months ago

@<1722061389024989184:profile|ResponsiveKoala38>
image

  
  
Posted 11 months ago

@<1526734383564722176:profile|BoredBat47> Please try running the following command

curl -XPOST -H 'Content-Type: application/json' 'localhost:9200/events-training_debug_image-*/_update_by_query?conflicts=proceed' -d'{
    "script": {
        "source": "ctx._source.url = ctx._source.url.replace('
.<OLD_ADDRESS>', '
.<NEW_ADDRESS>')",
        "lang": "painless"
    },
    "query": {"prefix": {"url": {"value": "
.<OLD_ADDRESS>", "case_insensitive": true}}}
}'
  
  
Posted 11 months ago

@<1722061389024989184:profile|ResponsiveKoala38> Now I can see the images where previously it was placeholders with text "Unable to upload the images"

  
  
Posted 11 months ago

Please let me know if it fixes the UI. I will ask to update our documentation then

  
  
Posted 11 months ago

It's the same request you provided just without "case_sensitive" option and with my endpoints @<1722061389024989184:profile|ResponsiveKoala38>

  
  
Posted 11 months ago

@<1523701070390366208:profile|CostlyOstrich36> Yes, I know. Above I posted a link where there's a solution. DB request to elastic to change those URLs. My question is: where to send this DB request? What endpoint? Request provided in FAQ in incomplete. It lacks URL where to send the request to.

curl --header "Content-Type: application/json" \
--request POST \
--data '{
    "script": {
        "source": "ctx._source.url = ctx._source.url.replace('
.<OLD_ADDRESS>', '
.<NEW_ADDRESS>')",
        "lang": "painless"
    },
    "query": {
        "match_all": {}
    }
}' \
  
  
Posted 11 months ago

@<1722061389024989184:profile|ResponsiveKoala38> Thanks a lot for the help. Keep up the good work!

  
  
Posted 11 months ago

I'll get back to you in a minute

  
  
Posted 11 months ago

Please share you command

  
  
Posted 11 months ago

@<1523701070390366208:profile|CostlyOstrich36> Old debug samples. My URL for files server has changed, and old debug sampled are not shown.

  
  
Posted 11 months ago

@<1526734383564722176:profile|BoredBat47> Can you please share the exact command that you are running?

  
  
Posted 11 months ago

Ah, I see. I forgot to escape the single quotes inside script. Please replace the current script source:
"ctx._source.url = ctx._source.url.replace('http://<MY_OLD_ADDRESS>', ' None .<NEW_ADDRESS>')"
With the escaped one:
"ctx._source.url = ctx._source.url.replace('''http://<MY_OLD_ADDRESS>''', ''' None .<NEW_ADDRESS>''')"

  
  
Posted 11 months ago