development:yaml:start

yaml

  • diccionarios: key: value
  • listas: - item
  • output.elasticsearch.index: …
    output:
      elasticsearch:
        index: 'beat-%{[beat.version]}-%{+yyyy.MM.dd}'
  • filebeat.inputs.0.type: log
    filebeat:
      inputs:
        - type: log
  • boolean
  • number
  • string:
    • comillas dobles (permite escapar caracteres, implica escapar las comillas y la barra invertida)
    • comillas simnples (no permite escapar caracteres)
    • sin comillas (no permite escapar caracteres, ojo con caracteres con significado en YAML)
  • duration:
    • valor numérico + unidad → ns, us, ms, s, m, h
  • regex
    • recomendado entre comillas simples
  • format string
    • permite referenciar variables → %{<variable>:valor_defecto}
    • también [variable]
  • ${VAR} : definición
  • ${VAR:default_value} : definición con valor por defecto
  • ${VAR:?error_text} : se añade error_text al mensaje de error si no se puede acceder a ${VAR}
  • ES_HOSTS="10.45.3.2:9220,10.45.3.1:9230"
    se convierte en lista:
    output.elasticseach:
      hosts: '${ES_HOSTS}'
  • pasando por línea de comando -E es-host=another-host:
    #establece localhost por defecto si no se le pasa variable
    es.host: '${ES_HOST:localhost}'
     
    output.elasticsearch:
      hosts: ['http://${es.host}:9200']
  • sustituciones de bloque:
    namespace1:
      subnamespace:
        host: localhost
        sleep: 1s
     
    namespace2:
      subnamespace:
        host: localhost
        sleep: 1s

    por

    namespace1: ${shared}
    namespace2: ${shared}
     
    shared:
      subnamespace:
        host: localhost
        sleep: 1s
  • beatname test config -c beatname.yml
  • development/yaml/start.txt
  • Darrera modificació: 13/08/2018 02:13
  • per mate