过去一周我一直在使用德鲁伊,并希望为某些postAggregations启用javascript。
我认为我按照概述的步骤更新了common.runtime.properties
中的../con f/druid/_common/
文件以包含druid.javascript.enabled=true
。然后我停止了当前的流程并重新运行了Quickstart程序,但它仍然说JavaScript已被禁用:
{
"error" : "Unknown exception",
"errorMessage" : "Instantiation of [simple type, class io.druid.query.aggregation.post.JavaScriptPostAggregator] value failed: JavaScript is disabled. (through reference chain: java.util.ArrayList[0])",
"errorClass" : "com.fasterxml.jackson.databind.JsonMappingException",
"host" : null
}
我目前正在快速启动'配置 - 单个本地机器。有什么指针吗?谢谢!
答案 0 :(得分:0)
JavaScript查询德鲁伊聚合。将文件另存为.body并点击curl请求。 这是平均值的示例查询。
curl -X POST" http://localhost:8082/druid/v2/?pretty" \ -H ' content-type:application / json' -d @ query.body
{
"queryType":"groupBy",
"dataSource":"whirldata",
"granularity":"all",
"dimensions":[],
"aggregations":[{"name":"rows","type":"count","fieldName":"rows"},
{"name":"TargetDOS","type":"doubleSum","fieldName":"Target DOS"}],"postAggregations":[
{
"type": "javascript",
"name": "Target DOS Average",
"fieldNames": ["TargetDOS", "rows"],
"function": "function(TargetDOS, rows) { return Math.abs(TargetDOS) / rows; }"
}], "intervals":[ "2006-01-01T00:00:00.000Z/2020-01-01T00:00:00.000Z" ]}
答案 1 :(得分:0)
您缺少的部分可能是快速入门从 function consultacnpj(){
var cnpj = $('#cnpj').val().toString();
if (cnpj.length==14){
google.script.run
.withSuccessHandler(onSuccessCNPJ)
.withFailureHandler(onFailureCNPJ)
.receitaws(cnpj);
function onFailureCNPJ(error) {
Materialize.toast("ERROR: " + error.message, 3000)
}
function onSuccessCNPJ(obj) {
$('#contratado_nome').val(obj.nome);
$('#address').val(obj.logradouro);
$('#number').val(obj.numero);
$('#compl').val(obj.complemento);
$('#bairro').val(obj.bairro);
$('#cep').val(obj.cep);
$('#city').val((obj.municipio + '/' + obj.uf))
var code = google.script.run
.withSuccessHandler(onSuccessCNAEP)
.withFailureHandler(onFailureCNAEP)
.codeCNAE(obj.atividade_principal[0].code);
function onFailureCNAEP(error) {
Materialize.toast("ERROR: " + error.message, 3000)
}
function onSuccessCNAEP(code) {
$('#cnaep').val(code + ' - ' + obj.atividade_principal[0].text);
};
google.script.run
.withSuccessHandler(onSuccessCNAES)
.withFailureHandler(onFailureCNAES)
.CNAESecundarios(obj.atividades_secundarias);
function onFailureCNAES(error) {
Materialize.toast("ERROR: " + error.message, 3000)
}
function onSuccessCNAES(codes) {
$('#cnaes').val(codes);
}
Materialize.updateTextFields();
Materialize.updateTextFields();
}
} else {
Materialize.toast('Preencha um CNPJ valido.', 3000)
}
}
而不是conf-quickstart
读取配置。因此,请尝试修改conf
。