# Filebeat.yml can not convert String into Object

**URL:** <https://discuss.elastic.co/t/filebeat-yml-can-not-convert-string-into-object/163502>\
**Category:** Beats\
**Tags:** filebeat\
**Created:** [January 9, 2019, 10:07am UTC](https://discuss.elastic.co/t/filebeat-yml-can-not-convert-string-into-object/163502 "2019-01-09T10:07:56Z")\
**Posts on this page:** 5\
**Page:** 1

<div class="post-metadata">

**Author:** ![matanos](https://avatars.discourse-cdn.com/v4/letter/m/8baadc/32.png) [@matanos](https://discuss.elastic.co/u/matanos)\
**Post date:** [January 9, 2019, 10:07am UTC](https://discuss.elastic.co/t/filebeat-yml-can-not-convert-string-into-object/163502/1 "2019-01-09T10:07:56Z")

</div>

aI'm adding by the config file.  
I've used the filebeat -e -c /etc/filebeat/filebeat.yml command to debug  
Omitted some comments to dodge the max char count .

filebeat.prospectors:

# Each - is a prospector. Most options can be set at the prospector level, so

# you can use different prospectors for various configurations.

# Below are the prospector specific configurations.

- type: log

# multiline.pattern: '^([0-9]{4}-[0-9]{2}-[0-9]{2})|([J|F|M|A|M|S|O|N|D][a-z]{2} [0-9]{1,2}, [0-9]{2})'

# multiline.negate: true

# multiline.match: after

### Multiline options

# Mutiline can be used for log messages spanning multiple lines. This is common

# for Java Stack Traces or C-Line Continuation

# The regexp Pattern that has to be matched. The example pattern matches all lines starting with [

#multiline.pattern: ^[

# Defines if the pattern set under pattern should be negated or not. Default is false.

#multiline.negate: false

# Match can be set to "after" or "before". It is used to define if lines should be append to a pattern

# that was (not) matched before or after or as long as a pattern is not matched based on negate.

# Note: After is the equivalent to previous and before is the equivalent to to next in Logstash

#multiline.match: after

#============================= Filebeat modules ===============================

filebeat.config.modules:

# Glob pattern for configuration loading

path: ${path.config}/modules.d/\*.yml

# Set to true to enable config reloading

reload.enabled: false

# Period on which files under path should be checked for changes

#reload.period: 10s

#==================== Elasticsearch template setting ==========================

setup.template.settings:  
index.number\_of\_shards: 3  
#index.codec: best\_compression  
#\_source.enabled: false

#================================ General =====================================

# The name of the shipper that publishes the network data. It can be used to group

# all the transactions sent by a single shipper in the web interface.

#name:

# The tags of the shipper are included in their own field with each

# transaction published.

#tags: ["service-X", "web-tier"]

# Optional fields that you can specify to add additional information to the

# output.

#fields:

# env: staging

#env: development (Matans' test)

#============================== Dashboards =====================================

# These settings control loading the sample dashboards to the Kibana index. Loading

# the dashboards is disabled by default and can be enabled either by setting the

# options here, or by using the `-setup` CLI flag or the `setup` command.

#setup.dashboards.enabled: false

# The URL from where to download the dashboards archive. By default this URL

# has a value which is computed based on the Beat name and version. For released

# versions, this URL points to the dashboard archive on the [artifacts.elastic.co](http://artifacts.elastic.co)

# website.

#setup.dashboards.url:

#============================== Kibana =====================================

# Starting with Beats version 6.0.0, the dashboards are loaded via the Kibana API.

# This requires a Kibana endpoint configuration.

setup.kibana:

# Kibana Host

# Scheme and port can be left out and will be set to the default (http and 5601)

# In case you specify and additional path, the scheme is required: [http://localhost:5601/path](http://localhost:5601/path)

# IPv6 addresses should always be defined as: https://[2001:db8::1]:5601

#host: "localhost:5601"

# host:"[myRemoteServer.com:5601](http://myRemoteServer.com:5601)"

# username: "X"

# password: "XX"

#============================= Elastic Cloud ==================================

# These settings simplify using filebeat with the Elastic Cloud ([https://cloud.elastic.co/](https://cloud.elastic.co/)).

# The cloud.id setting overwrites the `output.elasticsearch.hosts` and

# `setup.kibana.host` options.

# You can find the `cloud.id` in the Elastic Cloud web UI.

#cloud.id:

# The cloud.auth setting overwrites the `output.elasticsearch.username` and

# `output.elasticsearch.password` settings. The format is `<user>:<pass>`.

#cloud.auth:

#================================ Outputs =====================================

# Configure what output to use when sending the data collected by the beat.

#-------------------------- Elasticsearch output ------------------------------  
#output.elasticsearch:

# Array of hosts to connect to.

# hosts: ["localhost:9200"]

# Optional protocol and basic auth credentials.

#protocol: "https"  
#username: "elastic"  
#password: "changeme"

#----------------------------- Logstash output --------------------------------  
output.logstash:  
hosts:["[myRemoteserver.com:5044](http://myRemoteserver.com:5044)"]  
#output.logstash:

# The Logstash hosts

#hosts: ["localhost:5044"]  
#output.logstash:

# hosts: [":::5044"]

# Optional SSL. By default is off.

# List of root certificates for HTTPS server verifications

#ssl.certificate\_authorities: ["/etc/pki/root/ca.pem"]

# Certificate for SSL client authentication

#ssl.certificate: "/etc/pki/client/cert.pem"  
ssl.certificate: "/home/ubuntu/Logs\_Server.pem"

# Client Certificate Key

#ssl.key: "/etc/pki/client/cert.key"

#================================ Logging =====================================

# Sets log level. The default log level is info.

# Available log levels are: error, warning, info, debug

#logging.level: debug

# At debug level, you can selectively enable logging only for some components.

# To enable all selectors use ["\*"]. Examples of other selectors are "beat",

# "publish", "service".

#logging.selectors: ["\*"]

#============================== Xpack Monitoring ===============================

# filebeat can export internal metrics to a central Elasticsearch monitoring

# cluster. This requires xpack monitoring to be enabled in Elasticsearch. The

# reporting is disabled by default.

# Set to true to enable the monitoring reporter.

#xpack.monitoring.enabled: false

# Uncomment to send the metrics to Elasticsearch. Most settings from the

# Elasticsearch output are accepted here as well. Any setting that is not set is

# automatically inherited from the Elasticsearch output configuration, so if you

# have the Elasticsearch output configured, you can simply uncomment the

# following line.

#xpack.monitoring.elasticsearch:

---

<div class="post-metadata">

**Author:** ![matanos](https://avatars.discourse-cdn.com/v4/letter/m/8baadc/32.png) [@matanos](https://discuss.elastic.co/u/matanos)\
**Post date:** [January 9, 2019, 10:34am UTC](https://discuss.elastic.co/t/filebeat-yml-can-not-convert-string-into-object/163502/2 "2019-01-09T10:34:10Z")

</div>

The response is : Exiting: error unpacking config data: can not convert 'string' into 'object' accessing 'output.logstash' (source:'/etc/filebeat/filebeat.yml') accessing 'output' (source:'/etc/filebeat/filebeat.yml')

---

<div class="post-metadata">

**Author:** ![harshbajaj16](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/harshbajaj16/32/44970_2.png) [@harshbajaj16](https://discuss.elastic.co/u/harshbajaj16)\
**Post date:** [January 9, 2019, 10:44am UTC](https://discuss.elastic.co/t/filebeat-yml-can-not-convert-string-into-object/163502/3 "2019-01-09T10:44:33Z")

</div>

Hi @matanos ,

The problem is with your logstash o/p.

> [@matanos](#):
>
> ```
> #----------------------------- Logstash output --------------------------------
> output.logstash:
> hosts:["[myRemoteserver.com:5044](http://myRemoteserver.com:5044)"]
> #output.logstash:
> 
> # The Logstash hosts
> 
> #hosts: ["localhost:5044"]
> #output.logstash:
> 
> # hosts: ["35.153.6.230:5044"]
> 
> # Optional SSL. By default is off.
> 
> ```

Please check below documentation and configure accordingly for the same and let me know if you are still facing any issue.

Regards,  
Harsh

---

<div class="post-metadata">

**Author:** ![matanos](https://avatars.discourse-cdn.com/v4/letter/m/8baadc/32.png) [@matanos](https://discuss.elastic.co/u/matanos)\
**Post date:** [January 9, 2019, 11:12am UTC](https://discuss.elastic.co/t/filebeat-yml-can-not-convert-string-into-object/163502/4 "2019-01-09T11:12:23Z")

</div>

Hi Harash,

thx for your reply.  
Now I'm facing another challenge :  
Exiting: error loading config file: yaml: line 165: could not find expected ':'

output.logstash:  
hosts:["[35.153.6.230:5044](http://35.153.6.230:5044)"]  
#output.logstash:

# The Logstash hosts

#hosts: ["localhost:5044"]  
#output.logstash:

# hosts: ["MyRemoteServer"]

# Optional SSL. By default is off.

line 165 is : hosts:["[myRemoteserver.com:5044](http://myRemoteserver.com:5044)"]

---

<div class="post-metadata">

**Author:** ![system](https://us1.discourse-cdn.com/elastic/original/3X/1/a/1ac57faf039f6b580b3f104ef42a2a89e41014de.png) [@system](https://discuss.elastic.co/u/system)\
**Post date:** [February 6, 2019, 11:26am UTC](https://discuss.elastic.co/t/filebeat-yml-can-not-convert-string-into-object/163502/5 "2019-02-06T11:26:06Z")

</div>

This topic was automatically closed 28 days after the last reply. New replies are no longer allowed.
