【问题标题】:Need curl command to ElasticSearch for PowerShell需要 curl 命令到 ElasticSearch for PowerShell
【发布时间】:2019-04-09 20:03:10
【问题描述】:

我的应用程序正在向我的日志发送磁盘阈值消息。我已经发现(这里是low disk watermark [??%] exceeded on)我需要做什么。我在下面附加了一个 curl 命令,它应该可以解决我的问题。不幸的是,我在 Windows 中,所以没有 curl。

我已经尝试过构建自己的“Invoke-RestMethod”命令,但都不起作用(而且我也忘记保存它们以供参考)。我在 github 上查看了 parse-curl,但不明白它对我有什么帮助。所以我有点迷失在文档中......外壳中的 Invoke-RestMethod 错误最终也不是很有帮助。

curl -X PUT "localhost:9200/_cluster/settings" -H 'Content-Type: application/json' -d' 
{
"persistent" : {
"cluster.routing.allocation.disk.threshold_enabled" : "false"
}
}
'

所以...我只需要一个有效的命令来让 PowerShell 满意。

【问题讨论】:

  • edit您的问题并显示对您不起作用的Invoke-RestMethod语句以及您从该语句中得到的错误。

标签: powershell elasticsearch curl


【解决方案1】:
$body = @{
    persistent = @{
        "cluster.routing.allocation.disk.threshold_enabled" = $false
    }
} | ConvertTo-Json

Invoke-WebRequest -Uri "http://localhost:9200/_cluster/settings" -Method Put -Body $body -ContentType "application/json"

试试上面的代码。也许删除“http://”部分,但我不这么认为。

希望这会有所帮助!

【讨论】:

  • 如果在引号之间需要一个字符串值 false,请将 $false 更改为“false”。但这应该已经起作用了
  • 第一次尝试使用“$false”和“http://”时效果很好,非常感谢! :)
猜你喜欢
  • 2016-06-27
  • 1970-01-01
  • 2016-11-17
  • 2020-07-19
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-04-18
  • 1970-01-01
相关资源
最近更新 更多