Giter Club home page Giter Club logo

elasticsearch4idea's Introduction

Elasticsearch Plugin for JetBrains IDEs

Version Downloads

Intro

Elasticsearch Plugin is a GUI Client for Elasticsearch based on IntelliJ Platform. It is designed to query and manage Elasticsearch cluster. You can connect to a local cluster, to a server, or in the cloud. Supports all versions of Elasticsearch and OpenSearch.

For the documentation please visit Documentation.

To get the Elasticsearch plugin visit Jetbrains Marketplace.

To get a quick tour of basic Elasticsearch plugin features, see the introduction video (3 minutes) but it is a bit outdated.

Elasticsearch plugin

Features

Create many connections to Elasticsearch or OpenSearch clusters with Authorization, SSL, SSH, AWS Signature

multiple connections to ES

Browse your data with a Table or JSON Views. Use Pagination, Sorting and Filtering with Kibana Query Language (KQL).

browse and manage indices

Create, Update, Delete documents right in the table or in the JSON editor dialog.

Create, Update, Delete documents

QueryDSL and Rest API autocomplete with Elasticsearch Documentation

queryDSL autocomplete

Export data to CSV, JSON, Bulk API or Dump file

Export data

Import data from CSV, JSON, Dump file or Copy indexes

Import data

Other features

  • Save .es files with requests in your project and share them with your team
  • Save your favorite queries and access them from the explorer tool window
  • History of all executed requests
  • and more...

elasticsearch4idea's People

Contributors

antonshuvaev 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

Watchers

 avatar  avatar

elasticsearch4idea's Issues

save config as global.

Could cluster config be saved as global? Multiple Idea instances can share cluster configs.
可以保存配置为全局配置吗? 多个idea实例可以共享配置

Possibility to disconnect from ElasticSearch

Disconnect from database sources is available by hotkey Ctrl+F2 or red stop button in database manager.
It would be great if we can disconnect from ElasticSearch server also - for example I'm using SSH tunnel to connect to server and connection hangs after logout until PhpStorm is closed.

Latest update no longer loads indexes

I just updated the plugin yesterday and it seems something has been broken. When I go to the indexes, its just blank and no amount of refreshing seems to load them back:
Screen Shot 2021-06-17 at 10 32 22 AM
Screen Shot 2021-06-17 at 10 33 23 AM
Screen Shot 2021-06-17 at 10 33 44 AM

Easier Iindex deletion

This is a great plug-in, the only issue I had thus far is with deleting indexes. It just takes too long, especially if you need to delete multiple indexes or even delete all indexes. I can see 3 ways to make it easier.

  1. Context menu option on the level of connection to "Delete all indexes". Here a confirmation box to explicitly write "DELETE" would make sense IMHO.
  2. Context menu option while having multiple indexes selected to "Delete". Here a Yes/No Confirmation box would be OK.
  3. Change the confirmation box for single deletion from writing "DELETE" to Yes/No. I do not know about your experience, but for me, I resort to copy&paste when I have to delete more than one index anyway. It just slows me down.

What do you think about those? I would be open to helping you out if you think they are a good idea, but do not have the time to develop them.

IDE Fatal Errors: NullPointerException

Hi,

Just noticed some errors (12 times in a few minutes) logged by Phpstorm that are caused by this plugin.
Here is the stack trace:

java.lang.NullPointerException
	at org.elasticsearch4idea.language.completion.ElasticsearchCompletionContributor$a.addCompletions(ElasticsearchCompletionContributor.kt:135)
	at com.intellij.codeInsight.completion.CompletionProvider.addCompletionVariants(CompletionProvider.java:34)
	at com.intellij.codeInsight.completion.CompletionContributor.fillCompletionVariants(CompletionContributor.java:156)
	at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:77)
	at com.intellij.codeInsight.completion.CompletionService.getVariantsFromContributors(CompletionService.java:60)
	at com.intellij.codeInsight.completion.CompletionService.performCompletion(CompletionService.java:133)
	at com.intellij.codeInsight.completion.BaseCompletionService.performCompletion(BaseCompletionService.java:41)
	at com.intellij.codeInsight.completion.CompletionProgressIndicator.lambda$calculateItems$12(CompletionProgressIndicator.java:863)
	at com.intellij.util.indexing.FileBasedIndex.lambda$ignoreDumbMode$0(FileBasedIndex.java:163)
	at com.intellij.openapi.util.RecursionManager$1.computePreventingRecursion(RecursionManager.java:111)
	at com.intellij.util.indexing.FileBasedIndexEx.ignoreDumbMode(FileBasedIndexEx.java:574)
	at com.intellij.util.indexing.FileBasedIndex.ignoreDumbMode(FileBasedIndex.java:162)
	at com.intellij.util.indexing.DumbModeAccessType.ignoreDumbMode(DumbModeAccessType.java:43)
	at com.intellij.codeInsight.completion.CompletionProgressIndicator.calculateItems(CompletionProgressIndicator.java:859)
	at com.intellij.codeInsight.completion.CompletionProgressIndicator.runContributors(CompletionProgressIndicator.java:847)
	at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.lambda$startContributorThread$6(CodeCompletionHandlerBase.java:353)
	at com.intellij.codeInsight.completion.AsyncCompletion.lambda$tryReadOrCancel$5(CompletionThreading.java:172)
	at com.intellij.openapi.application.impl.ApplicationImpl.tryRunReadAction(ApplicationImpl.java:1096)
	at com.intellij.codeInsight.completion.AsyncCompletion.tryReadOrCancel(CompletionThreading.java:170)
	at com.intellij.codeInsight.completion.CodeCompletionHandlerBase.lambda$startContributorThread$7(CodeCompletionHandlerBase.java:345)
	at com.intellij.codeInsight.completion.AsyncCompletion.lambda$startThread$0(CompletionThreading.java:95)
	at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:178)
	at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:688)
	at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:634)
	at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:64)
	at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:165)
	at com.intellij.codeInsight.completion.AsyncCompletion.lambda$startThread$1(CompletionThreading.java:91)
	at com.intellij.util.RunnableCallable.call(RunnableCallable.java:20)
	at com.intellij.util.RunnableCallable.call(RunnableCallable.java:11)
	at com.intellij.openapi.application.impl.ApplicationImpl$1.call(ApplicationImpl.java:265)
	at java.base/java.util.concurrent.FutureTask.run(FutureTask.java:264)
	at java.base/java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1128)
	at java.base/java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:628)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:668)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1$1.run(Executors.java:665)
	at java.base/java.security.AccessController.doPrivileged(Native Method)
	at java.base/java.util.concurrent.Executors$PrivilegedThreadFactory$1.run(Executors.java:665)
	at java.base/java.lang.Thread.run(Thread.java:834)

I'm using latest version (1.3.0), don't know exactly what I was doing when this occurred sorry, probably writing a query.
Not a big deal, my IDE didn't crash or anything, it's just so you know!

Better support for _source and fix filter_path

Hi,

I tried to make a request to only get a few fields of my documents and it seems that the table view always shows all the fields even if we only request a few with the _source parameter (the column are just empty with unset)
I tried to limit the fields with the filter_path parameter, it works fine with the text view but with the table view it results with a java.lang.NullPointerException when running the query.

Could it be possible to support limiting the fields to show in the table view?

Thanks!

Strange characters on some table result lines

Hi,

I have some strange characters on some lines of the result table. The "data" field of my index contains big serialized php arrays, so it contains some specials characters but the result is very strange as you can see :
image

In the text view mode the data are good, as expected, so may be something in the table view?

Thanks.

Settings are not transferred to another computer

PhpStorm is configured to upload the configuration to the GitHub repository.

I created a connection setting by choosing "settings level - global".

On my local machine, opening different projects, I see a global setting.

But on another computer it won't boot. That is, the plugin saves the configuration for global use within a single computer.

It is not comfortable

image

Quick jump to a column

It's difficult to find the column you are interested in with this plugin. With MySQL plugin or other stock IntelliJ plugins, on hitting CMD+F12, it shows list of fields, similarly as this plugin shows structure. However, while stock plugins jump to a colum when selecting field from this list, this plugin doesn't. That makes it very confusing for me and difficult to find the information in row I'm looking for.

2021-10-26_18-11-45 (1)

Not Work with Ultimate 2020.2

I tried to use it in the ultimate 2020.20 and it gave an error:

Cannot init toolwindow org.elasticsearch4idea.ui.explorer.ElasticsearchToolWindowFactory@373fddee

kotlin.KotlinNullPointerException
at org.elasticsearch4idea.utils.MyUIUtils.getPropertiesTableHeaderColor(MyUIUtils.kt:44)
at org.elasticsearch4idea.ui.explorer.table.ElasticsearchInfosTable.(ElasticsearchInfosTable.kt:47)
at org.elasticsearch4idea.ui.explorer.ElasticsearchExplorer.(ElasticsearchExplorer.kt:72)
at org.elasticsearch4idea.ui.explorer.ElasticsearchToolWindowFactory.createToolWindowContent(ElasticsearchToolWindowFactory.kt:28)
at com.intellij.openapi.wm.impl.ToolWindowImpl.createContentIfNeeded$intellij_platform_ide_impl(ToolWindowImpl.kt:499)
at com.intellij.openapi.wm.impl.ToolWindowImpl.scheduleContentInitializationIfNeeded$intellij_platform_ide_impl(ToolWindowImpl.kt:479)
at com.intellij.openapi.wm.impl.ToolWindowManagerImpl.doShowWindow(ToolWindowManagerImpl.kt:966)
at com.intellij.openapi.wm.impl.ToolWindowManagerImpl.showToolWindowImpl(ToolWindowManagerImpl.kt:912)
at com.intellij.openapi.wm.impl.ToolWindowManagerImpl.doRegisterToolWindow(ToolWindowManagerImpl.kt:1036)
at com.intellij.openapi.wm.impl.ToolWindowManagerImpl.initToolWindows(ToolWindowManagerImpl.kt:487)
at com.intellij.openapi.wm.impl.ToolWindowManagerImpl.access$initToolWindows(ToolWindowManagerImpl.kt:92)
at com.intellij.openapi.wm.impl.ToolWindowManagerImpl$beforeProjectOpened$2.run(ToolWindowManagerImpl.kt:423)
at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:201)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:802)
at com.intellij.openapi.application.impl.ApplicationImpl.lambda$invokeLater$4(ApplicationImpl.java:322)
at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:84)
at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:132)
at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:47)
at com.intellij.openapi.application.impl.FlushQueue$FlushNow.run(FlushQueue.java:188)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:971)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:841)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:452)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:733)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$9(IdeEventQueue.java:451)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:802)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:499)
at com.intellij.ide.IdeEventQueue.pumpEventsForHierarchy(IdeEventQueue.java:1048)
at com.intellij.openapi.progress.util.ProgressWindow.pumpEventsForHierarchy(ProgressWindow.java:225)
at com.intellij.openapi.progress.util.ProgressWindow.lambda$startBlocking$4(ProgressWindow.java:214)
at com.intellij.openapi.application.impl.ApplicationImpl.runUnlockingIntendedWrite(ApplicationImpl.java:828)
at com.intellij.openapi.progress.util.ProgressWindow.startBlocking(ProgressWindow.java:213)
at com.intellij.openapi.progress.impl.ProgressRunner.lambda$legacyExec$6(ProgressRunner.java:304)
at java.base/java.util.concurrent.CompletableFuture.uniAcceptNow(CompletableFuture.java:753)
at java.base/java.util.concurrent.CompletableFuture.uniAcceptStage(CompletableFuture.java:731)
at java.base/java.util.concurrent.CompletableFuture.thenAccept(CompletableFuture.java:2108)
at com.intellij.openapi.progress.impl.ProgressRunner.legacyExec(ProgressRunner.java:302)
at com.intellij.openapi.progress.impl.ProgressRunner.submit(ProgressRunner.java:250)
at com.intellij.openapi.progress.impl.ProgressRunner.submitAndGet(ProgressRunner.java:171)
at com.intellij.openapi.application.impl.ApplicationImpl.runProcessWithProgressSynchronously(ApplicationImpl.java:421)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcessWithProgressSynchronously(CoreProgressManager.java:502)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.runProcessWithProgressSynchronously(ProgressManagerImpl.java:83)
at com.intellij.openapi.project.impl.ProjectUiFrameAllocator$run$1.run(ProjectFrameAllocator.kt:113)
at com.intellij.openapi.application.TransactionGuardImpl$2.run(TransactionGuardImpl.java:201)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:802)
at com.intellij.openapi.application.impl.ApplicationImpl.lambda$invokeAndWait$8(ApplicationImpl.java:475)
at com.intellij.openapi.application.impl.LaterInvocator$1.run(LaterInvocator.java:126)
at com.intellij.openapi.application.impl.FlushQueue.doRun(FlushQueue.java:84)
at com.intellij.openapi.application.impl.FlushQueue.runNextEvent(FlushQueue.java:132)
at com.intellij.openapi.application.impl.FlushQueue.flushNow(FlushQueue.java:47)
at com.intellij.openapi.application.impl.FlushQueue$FlushNow.run(FlushQueue.java:188)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)
at com.intellij.ide.IdeEventQueue.defaultDispatchEvent(IdeEventQueue.java:971)
at com.intellij.ide.IdeEventQueue._dispatchEvent(IdeEventQueue.java:841)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$8(IdeEventQueue.java:452)
at com.intellij.openapi.progress.impl.CoreProgressManager.computePrioritized(CoreProgressManager.java:744)
at com.intellij.ide.IdeEventQueue.lambda$dispatchEvent$9(IdeEventQueue.java:451)
at com.intellij.openapi.application.impl.ApplicationImpl.runIntendedWriteActionOnCurrentThread(ApplicationImpl.java:802)
at com.intellij.ide.IdeEventQueue.dispatchEvent(IdeEventQueue.java:499)
at java.desktop/java.awt.EventDispatchThread.pumpOneEventForFilters(EventDispatchThread.java:203)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForFilter(EventDispatchThread.java:124)
at java.desktop/java.awt.EventDispatchThread.pumpEventsForHierarchy(EventDispatchThread.java:113)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:109)
at java.desktop/java.awt.EventDispatchThread.pumpEvents(EventDispatchThread.java:101)
at java.desktop/java.awt.EventDispatchThread.run(EventDispatchThread.java:90)

No result window after update to PhpStorm 2021.2.1

Hello,

I'm having a strange bug: I don't see any result for my queries after updating my phpstorm to 2021.2.1 (on linux, using manual archive downloaded from jetbrains).

My saved cluster are there, I can open a REST console but when I launch any request, I can see the "Performing request" loader at the bottom of the IDE, but after that I don't see the result anymore: it uses to split the window in half, left for the query and right for the results before I updated I think.

It's the same for everything, trying to show cluster stats, health or anything gives me an empty window.
I don't even have the editor config icon on the right (see attached capture).
Nothing in the result view

Launching the same request with curl or the phpstorm internal http client works fine, so the issue is not coming from my cluster.
I tried to uninstall and reinstall the plugin, remove and re-add my cluster, still happening.
I don't see anything in the PhpStorm logs when using the plugin.

Thanks!

Elasticsearch dsl input autocompletion

Hello, Thank you for providing the good elasticsearch plugin! I just some propose for improving the plugin for autocomplete. This is only my advice, it's up to you!

Thank for your work!

Support 2019.3

Hello,

I tried to install this plugin using the zip file. But IntelliJ 2019.3 said the plugin is incompatible with my IDE. Any instructions to run this or even marketplace support would be helpful

Feature request: Ability to copy data from columns?

Hi,

I think it would be nice to be able to copy data directly from the table view.
I don't know anything about idea plugins so it might not be possible.
Actually when I try to copy from the table results I get something like "org.elasticsearch4idea.hS@3f904cd7" instead of the actual value. Right now I was trying to copy an entire column content but was not able to do so, instead I got a list of "org.elasticsearch4idea...".
A nice alternative could be to have a button to download the results as csv.

Thanks!

SSL support?

Hello,

Our Elasticsearch cluster is protected with Search Guard. This means we have SSL on port 9200 and this plugin cannot connect.

What would be required to add SSL support?

Query URL encoding issue

I'm trying to make a request GET /_cat/indices?h=index
getting following error:

{
    "error": "Incorrect HTTP method for uri [/_cat/indices%5C%3Fh=index] and method [GET], allowed: [POST]",
    "status": 405
}

curl works just fine curl -XGET "localhost:9200/_cat/indices?h=index"

All cluster went down because I miss-clicked on order by _id

Hi,

Just had a major issue with this. My whole ES prod cluster went down because I just miss-clicked on the "_id" column (which has for consequence to sort by it).
Just tried again in dev to see if I can reproduce and yes, my dev ES crashed after doing that.
I might have a config issue too, as in dev my cluster only crashed once, after that, when I tried again, I just had a CircuitBreakingException as a result : java.util.concurrent.ExecutionException: CircuitBreakingException[[fielddata] Data too large, data for [_id] would be ...

I will investigate on why my whole cluster crashed for that, but anyway the sort on the _id field should be disabled as the doc clearly states this field should not be used to sort: https://www.elastic.co/guide/en/elasticsearch/reference/current/mapping-id-field.html

Thanks!

[feature/discussion] allow insecure SSL?

Other tools allow usage of self-signed certificates if explicitly wanted (like --insecure switch on cURL, or 'self-signed' option on Kaizen..which i think is doing the same. Not sure though, but what else can it be :))

I struggled a bit to get a working client-certificate for my self-signed elastic-cluster, so i would like to ask if it would be an option to add something like "allow insecure connections"?

Plugin hangs after update

After an update to 0.7.1 the plugin hangs when you switch to View Mode "Text". There is no reaction anymore from the IDE.

Cannot work with large results

I wanted to use this plugin to export large index into CSV, having more than 1 billion results. However, when I increase page size beyond 10000, ES complains that result window is too large.

2021-10-26_17-37-03 (1)

Plugin should paginate these results and load data in batch, not attempt to request everything at once.

Sort error

I got an error while trying to sort output by any column

2020-11-09_09-26-40

Windows 10 Pro 64
PhpStorm 2020.2.3 Build #PS-202.7660.42, built on October 16, 2020
Plugin version 0.4.0
ElasticSearch 6.8

Freeze when trying to connect to unreachable server

Hey, thanks for this nice plugin I've just discovered!

I added two ES servers : dev (local) and prod (which is only accessible if I connect to a VPN).
When I'm disconnected from the VPN, I can't access the prod server and I expected the plugin to just don't connect to it and let me access the dev server. Instead, my IDE just freezed has it looked to keep trying to reach the server. I didn't wait long and just killed it.

I suggest you add a short timeout or even better, try to connect to the server only if the user unfold it in the list (it looks like it's the behaviour of the database tab of Idea but I might be wrong). I think it would be the best because I've noticed that opening the tab is quite long as the plugin seems to get infos on all the added servers but I don't think it's really necessary unless we explicitly click on them. Please tell me what you think about it, it might be useful for you or others...

Thanks!

Fatal Error on invalid HTTP host

Hi again, thx for your last fix! It worked well =).

Today, the server my elastic search service is running on was down and i got some Fatal Errors in PHPstorm, 2020-2 from your plugin. Maybe you can catch the error before the fatal error? Thx in advance!

Heres the stackstrace

java.lang.IllegalArgumentException: Invalid HTTP host: {webserver ip placeholder}:9200/
at org.apache.http.HttpHost.create(HttpHost.java:122)
at org.elasticsearch4idea.model.ClusterConfiguration.getHttpHost(ClusterConfiguration.kt:32)
at org.elasticsearch4idea.rest.ElasticsearchClient.(ElasticsearchClient.kt:46)
at org.elasticsearch4idea.service.ElasticsearchManager.getClient(ElasticsearchManager.kt:360)
at org.elasticsearch4idea.service.ElasticsearchManager.getClient(ElasticsearchManager.kt:354)
at org.elasticsearch4idea.service.ElasticsearchManager.prepareFetchCluster(ElasticsearchManager.kt:86)
at org.elasticsearch4idea.service.ElasticsearchManager.prepareFetchCluster(ElasticsearchManager.kt:65)
at org.elasticsearch4idea.ui.explorer.ElasticsearchExplorer$treeNodeAction$1.invoke(ElasticsearchExplorer.kt:305)
at org.elasticsearch4idea.ui.explorer.ElasticsearchExplorer$treeNodeAction$1.invoke(ElasticsearchExplorer.kt:67)
at org.elasticsearch4idea.utils.TaskUtils$runBackgroundTask$1.run(TaskUtils.kt:32)
at com.intellij.openapi.progress.impl.CoreProgressManager$TaskRunnable.run(CoreProgressManager.java:935)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcessWithProgressAsync$5(CoreProgressManager.java:442)
at com.intellij.openapi.progress.impl.ProgressRunner.lambda$submit$3(ProgressRunner.java:235)
at com.intellij.openapi.progress.impl.CoreProgressManager.lambda$runProcess$2(CoreProgressManager.java:170)
at com.intellij.openapi.progress.impl.CoreProgressManager.registerIndicatorAndRun(CoreProgressManager.java:629)
at com.intellij.openapi.progress.impl.CoreProgressManager.executeProcessUnderProgress(CoreProgressManager.java:581)
at com.intellij.openapi.progress.impl.ProgressManagerImpl.executeProcessUnderProgress(ProgressManagerImpl.java:60)
at com.intellij.openapi.progress.impl.CoreProgressManager.runProcess(CoreProgressManager.java:157)

Multi node connection doesn't seem to work

I have a 3 data node ES cluster with my configuration looking like this:

image

If I take the first node offline in the URL list, I cannot communicate with ES by doubling clicking on my cluster or by manually refreshing until I cut+paste the "down" data node and put it last in the list (which will make it check the next node in the list).

Multi search JSON error

Multi search function worked fine but this is a error showed in JSON edit box.
"JSON standard allows only one top-level value."

multi search API
plugin version: 0.7.2
idea version: 2020.3.2

1.0 regressions ?

Hi,

Just updated to the 30 days trial of the 1.0 version and noticed some regressions:

  • No longer have the requests history (that was useful!)
  • Can no longer launch requests to see only aggregations: seems like even in text view mode, only hits are shown. When launching a request with a size of 0 and one aggregation, I get an empty array as a result []

Thanks!

Convert unicode symbols

Hello!
I'm very thankful to you for your plugin! I wish u can help with a small problem - Cyrillic symbols are encoded in Unicode and can't be read in "Text" view mode:
image
But in "Table" view mode this data was print correctly.

Allow to set a read-only mode

Hi,

This in an enhancement suggestion:
It would be great to be able to set an ES connection to a read-only mode, to prevent modifications on production servers.
I have my dev and prod clusters in my connections, even they are explicitly named, we all know that a request can easily be made on the wrong server 😄

I was thinking of a simple checkbox to enable the read-only mode (like for databases connection in the database Intellij tool) to prevent all DELETE requests, update, update_by_query, etc.
The best would be to add a confirm dialog when trying to edit/delete something on a read-only server, this way it would still be easily possible to edit prod data while being more secure.

Enable AWS Auth V4

Hi,

first, im not sure how to mark issues as "enhancements" yet, so sorry!

I am using the aws elastic search service und connect via AwsAuthV4.
It would be great to have this option for authenthication as well!

Maybe you can consider it for future versions.

java.lang.NoClassDefFoundError - in 0.2.0 and 0.1.9

Hi,

good job with the plugin first!

Im not sure why, but PHPStorm 2020.2 always reports IDE Fatal Errors in combination with your plugin.

Some of the tracktrace:

java.lang.NoClassDefFoundError: org/apache/commons/io/FileUtils
at org.elasticsearch4idea.model.ElasticsearchClusterInfo.toTableEntryList(ElasticsearchClusterInfo.kt:40)
at org.elasticsearch4idea.ui.explorer.ElasticsearchExplorer$updateNodeInfo$1$1$1.run(ElasticsearchExplorer.kt:158)
at java.desktop/java.awt.event.InvocationEvent.dispatch(InvocationEvent.java:313)
at java.desktop/java.awt.EventQueue.dispatchEventImpl(EventQueue.java:776)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:727)
at java.desktop/java.awt.EventQueue$4.run(EventQueue.java:721)
at java.base/java.security.AccessController.doPrivileged(Native Method)
at java.base/java.security.ProtectionDomain$JavaSecurityAccessImpl.doIntersectionPrivilege(ProtectionDomain.java:85)
at java.desktop/java.awt.EventQueue.dispatchEvent(EventQueue.java:746)

I had hoped the update to version 0.2.0 would fix it, but i still get them. I will provide more information if the need arises of course! Maybe im missing something?

All fields hidden in table view when type is "_doc"

Hi,
Since the last update (0.7.0) that allows to hide some fields, all my fields are hidden but I can't find a way to show them.
The only fields I see in the table view are the ES functional fields (prefixed by "_").
If I open the "Index Structure" menu, those are also the only fields I can see.

image

On text view I can see all my fields of course, but I can't find a way to show them in the table view.

EDIT : After further investigations, I have the issue with all legacy indexes where my type is "_doc" (as it was the convention at the time, when types were going to be removed). With other indexes that have an other type (for example I have an index with a "destination" type), it works. So clearly an issue with types having the name "_doc".

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.