ingestSegment taks submit error

I would submit ingestSegment task to Overlord, because I want change metric name from unique_vistors to unique_count.

When I submit the task, Overlord occurs an error.

Belows are task json and error.

How should I do?

-error

{

“error”: “Instantiation of [simple type, class io.druid.indexing.common.task.IndexTask] value failed: Optional.get() cannot be called on an absent value”

}

``

  • task

{

“type”: “index”,

“spec”: {

“dataSchema”: {

“dataSource”: “test”,

“parser”: {

“type”: “string”,

“parseSpec”: {

“format”: “json”,

“timestampSpec”: {

“column”: “timestamp”,

“format”: “auto”

},

“columns”: [“user_id”, “url”],

“dimensionsSpec”: {

“dimensions”: [

“url”

]

}

}

},

“metricsSpec”: [{

“type”: “count”,

“name”: “count”

}, {

“type”: “hyperUnique”,

“name”: “unique_count”,

“fieldName”: “user_id”

}],

“granularitySpec”: {

“type”: “uniform”,

“segmentGranularity”: “hour”,

“queryGranularity”: “minute”,

“interval”: “2016-07-19T00:00:00.000Z/2016-07-20T00:00:00.000Z”

},

“ioConfig”: {

“type”: “index”,

“firehose”: {

“type”: “ingestSegment”,

“dataSource”: “index”,

“interval”: “2016-07-19T00:00:00.000Z/2016-07-20T00:00:00.000Z”

}

}

}

}

}

``

Hi Hwansung, just as an FYI, regardless of how you index raw data, you can always change the name of a metric at query time using the “name” field in an aggregator.

So when you ingest data, you can just set “name” and “fieldName” both to “user_id”, and on the query side when you use the hyperUnique aggregator, set the “name” to “unique_count” and the “fieldName” to “user_id”.

Does that make sense?

Also, can you include the full stack trace of the error that occurred? It should be in overlord or task logs.