# Modules.d vs inputs.d vs filebeat.yml

**URL:** <https://discuss.elastic.co/t/modules-d-vs-inputs-d-vs-filebeat-yml/380754>\
**Category:** Beats\
**Tags:** filebeat\
**Created:** [August 5, 2025, 10:30am UTC](https://discuss.elastic.co/t/modules-d-vs-inputs-d-vs-filebeat-yml/380754 "2025-08-05T10:30:33Z")\
**Posts on this page:** 1\
**Showing post:** 2

<div class="post-metadata">

**Author:** ![Tortoise](https://sea2.discourse-cdn.com/elastic/user_avatar/discuss.elastic.co/tortoise/32/147587_2.png) [@Tortoise](https://discuss.elastic.co/u/Tortoise)\
**Post date:** [August 14, 2025, 8:23am UTC](https://discuss.elastic.co/t/modules-d-vs-inputs-d-vs-filebeat-yml/380754/2 "2025-08-14T08:23:39Z")

</div>

Hello @Just_Two_Cat_In_ABox

Welcome to the community!!

So looking at the input below is your idea?

```auto
/etc/filebeat/
│
├── filebeat.yml (Main config - minimal, upgrade-safe)
│ ├── filebeat.config.inputs:
│ │ path: inputs.d/*.yml
│ │ enabled: true
│ ├── filebeat.config.modules:
│ │ path: modules.d/*.yml
│ │ enabled: true
│ └── output.elasticsearch / logging / other global settings
│
├── inputs.d/ (Custom input configs grouped by project)
│ ├── projectA-inputs.yml
│ │ └── filebeat.inputs: (e.g., log paths, processors)
│ ├── projectB-inputs.yml
│ └── projectC-inputs.yml
│
├── modules.d/
│ ├── nginx.yml (enabled: true)
│ ├── apache.yml (enabled: true)
│ ├── system.yml (enabled: false or true)
│ └── other modules...

```

Also can review below post :

> [@Multiple YAML Files (Modular Configs)](https://discuss.elastic.co/t/multiple-yaml-files-modular-configs/376399/2):
>
> This is not possible, it is not supported, you need to use filebeat.yml for those configurations, except the inputs. For the inputs you can load its configuration from external config files as described [in the documentation](https://www.elastic.co/guide/en/beats/filebeat/current/filebeat-configuration-reloading.html). I have something like this. The filebeat.yml would look like this: name: "node-name" filebeat.config.inputs: enabled: true path: "/etc/filebeat/inputs/\*.yml" setup.ilm.enabled: false ilm.enabled: false setup.template.enabled: false queue.mem: events: 8000 flu…

Thanks!!

---

_[View the full topic](https://discuss.elastic.co/t/modules-d-vs-inputs-d-vs-filebeat-yml/380754)._
