Saturday, February 28, 2015

Filtering .raw fields with Python Elasticsearch DSL High-Level Client

It took me a while to figure out how to search the not_analyzed ".raw" fields created by Logstash in Elasticsearch indices, using the high-level Python Elasticsearch client. Because keyword arguments can't have attributes, Python throws an error if you try it the intuitive way (this assumes you've already set up a client as es and an index as i, as shown in the docs):

Instead, you create a dictionary with your parameters and unpack it using the ** operator:

This produces the Elasticsearch query we want:

7 comments:

James Harr said...

You can also inline that.

.filter(**{'asdf.raw':'value'})

It's less than convenient, but it works.

Unknown said...

thanks for sharing this blog
spring mvc interview questions
machine learning online training
servlet interview questions mytectra.in
wcf interview questions


Unknown said...

Greetings Mate,


A really interesting, clear and easily readable Loopback Mountain article of interesting and different perspectives' will clap. So much is so well covered here.

Write a program to print Lowest Common Ancestor of given the values of two nodes in a binary search tree. You may assume that both values already exist in the tree.
The program should take the inputs for the binary tree and construct the tree. Once the construction is over, the program takes 2 inputs to find out the LCA of those nodes.
Eg: In the below given tree, the lowest common ancestor of 4 and 14 is 8.

I read multiple articles and watched many videos about how to use this tool - and was still confused! Your instructions were easy to understand and made the process simple.


Kind Regards,
Indu

prash p said...

great information.
thank you for posting.
keep sharing.

DedicatedHosting4u said...

I have read your blog and I gathered some needful information from your blog. Keep update your blog. Awaiting for your next update. Thanks
DedicatedHosting4u.com

Eimple Labs said...

Eimple Labs, a renowned IT company based in Bangalore, has partnered with YBN University to design a B.Tech, BCA & MCA Computer Science program that focuses on industry-demanding technology. Through this collaboration, Eimple Labs brings its expertise and industry insights to the table, ensuring that the curriculum remains relevant and up-to-date. With a strong emphasis on practical learning and hands-on experience, students are exposed to real-world projects and industry case studies.
BTECH in Software Engineering
BTECH in Artificial Intelligence
BCA in Software Engineering
MCA in Software Engineering

Eimple Labs said...

Eimple Labs, a renowned IT company based in Bangalore, has partnered with YBN University to design a B.Tech, BCA & MCA Computer Science program that focuses on industry-demanding technology. Through this collaboration, Eimple Labs brings its expertise and industry insights to the table, ensuring that the curriculum remains relevant and up-to-date. With a strong emphasis on practical learning and hands-on experience, students are exposed to real-world projects and industry case studies.