Setup failing - timeout waiting for elasticsearch

Problem description
Trying to setup the stack on an Azur server running on Ubuntu and it gets stuck waiting for Elasticsearch to answer
Command ran docker compose up setup
Extra information

I ran the same setup on my local machine and it worked fine
When I curl elasticsearch from the server then it responds, but the check in the entrypoint get stuck and times out

curl -X GET "http://<IP_ADDRESS>:9200" -u elastic:changeme
{
  "name" : "elasticsearch",
  "cluster_name" : "docker-cluster",
  "cluster_uuid" : "VtH8YYMmRXCl0495OpaX0w",
  "version" : {
    "number" : "8.13.4",
    "build_flavor" : "default",
    "build_type" : "docker",
    "build_hash" : "da95df118650b55a500dcc181889ac35c6d8da7c",
    "build_date" : "2024-05-06T22:04:45.107454559Z",
    "build_snapshot" : false,
    "lucene_version" : "9.10.0",
    "minimum_wire_compatibility_version" : "7.17.0",
    "minimum_index_compatibility_version" : "7.0.0"
  },
  "tagline" : "You Know, for Search"
}

Stack configuration

Docker setup

$ docker version

Client: Docker Engine - Community
 Version:           26.1.4
 API version:       1.45
 Go version:        go1.21.11
 Git commit:        5650f9b
 Built:             Wed Jun  5 11:29:19 2024
 OS/Arch:           linux/amd64
 Context:           default

Server: Docker Engine - Community
 Engine:
  Version:          26.1.4
  API version:      1.45 (minimum version 1.24)
  Go version:       go1.21.11
  Git commit:       de5c9cf
  Built:            Wed Jun  5 11:29:19 2024
  OS/Arch:          linux/amd64
  Experimental:     false
 containerd:
  Version:          1.6.33
  GitCommit:        d2d58213f83a351ca8f528a95fbd145f5654e957
 runc:
  Version:          1.1.12
  GitCommit:        v1.1.12-0-g51d5e94
 docker-init:
  Version:          0.19.0
  GitCommit:        de40ad0

$ docker compose version

Docker Compose version v2.27.1

Container logs

Setup container
$ docker-compose logs

WARN[0000] /home/azureuser/docker-elk/docker-compose.yml: `version` is obsolete
WARN[0000] mount of type `volume` should not define `bind` option
[+] Running 4/3
 ✔ Network docker-elk_elk                Created                                                                                0.0s
 ✔ Volume "docker-elk_elasticsearch"     Created                                                                                0.0s
 ✔ Container docker-elk-elasticsearch-1  Created                                                                                0.1s
 ✔ Container docker-elk-setup-1          Created                                                                                0.1s
Attaching to setup-1
setup-1  | [+] Waiting for availability of Elasticsearch. This can take several minutes.
setup-1  |    ⠍ Timeout connecting to host. Is Elasticsearch healthy?
setup-1 exited with code 28

Elasticsearch container
$ docker-compose logs

Created elasticsearch keystore in /usr/share/elasticsearch/config/elasticsearch.keystore
Jun 08, 2024 2:36:59 PM sun.util.locale.provider.LocaleProviderAdapter <clinit>
WARNING: COMPAT locale provider will be removed in a future release
{"@timestamp":"2024-06-08T14:36:59.549Z", "log.level": "INFO", "message":"Using [jdk] native provider and native methods for [Linux]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.nativeaccess.NativeAccess","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:36:59.762Z", "log.level": "INFO", "message":"Java vector incubator API enabled; uses preferredBitSize=256; FMA enabled", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.apache.lucene.internal.vectorization.PanamaVectorizationProvider","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:00.085Z", "log.level": "INFO", "message":"version[8.13.4], pid[201], build[docker/da95df118650b55a500dcc181889ac35c6d8da7c/2024-05-06T22:04:45.107454559Z], OS[Linux/5.15.0-1064-azure/amd64], JVM[Oracle Corporation/OpenJDK 64-Bit Server VM/21.0.2/21.0.2+13-58]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.node.Node","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:00.086Z", "log.level": "INFO", "message":"JVM home [/usr/share/elasticsearch/jdk], using bundled JDK [true]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.node.Node","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:00.086Z", "log.level": "INFO", "message":"JVM arguments [-Des.networkaddress.cache.ttl=60, -Des.networkaddress.cache.negative.ttl=10, -Djava.security.manager=allow, -XX:+AlwaysPreTouch, -Xss1m, -Djava.awt.headless=true, -Dfile.encoding=UTF-8, -Djna.nosys=true, -XX:-OmitStackTraceInFastThrow, -Dio.netty.noUnsafe=true, -Dio.netty.noKeySetOptimization=true, -Dio.netty.recycler.maxCapacityPerThread=0, -Dlog4j.shutdownHookEnabled=false, -Dlog4j2.disable.jmx=true, -Dlog4j2.formatMsgNoLookups=true, -Djava.locale.providers=SPI,COMPAT, --add-opens=java.base/java.io=org.elasticsearch.preallocate, --enable-native-access=org.elasticsearch.nativeaccess, -Des.cgroups.hierarchy.override=/, -XX:ReplayDataFile=logs/replay_pid%p.log, -Des.distribution.type=docker, -XX:+UseG1GC, -Djava.io.tmpdir=/tmp/elasticsearch-14705026017636669653, --add-modules=jdk.incubator.vector, -XX:+HeapDumpOnOutOfMemoryError, -XX:+ExitOnOutOfMemoryError, -XX:HeapDumpPath=data, -XX:ErrorFile=logs/hs_err_pid%p.log, -Xlog:gc*,gc+age=trace,safepoint:file=logs/gc.log:utctime,level,pid,tags:filecount=32,filesize=64m, -Xms512m, -Xmx512m, -XX:MaxDirectMemorySize=268435456, -XX:G1HeapRegionSize=4m, -XX:InitiatingHeapOccupancyPercent=30, -XX:G1ReservePercent=15, --module-path=/usr/share/elasticsearch/lib, --add-modules=jdk.net, --add-modules=ALL-MODULE-PATH, -Djdk.module.main=org.elasticsearch.server]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.node.Node","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:00.086Z", "log.level": "INFO", "message":"Default Locale [en_US]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.node.Node","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.204Z", "log.level": "INFO", "message":"loaded module [repository-url]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.204Z", "log.level": "INFO", "message":"loaded module [rest-root]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.204Z", "log.level": "INFO", "message":"loaded module [x-pack-core]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.205Z", "log.level": "INFO", "message":"loaded module [x-pack-redact]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.205Z", "log.level": "INFO", "message":"loaded module [ingest-user-agent]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.205Z", "log.level": "INFO", "message":"loaded module [x-pack-async-search]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.205Z", "log.level": "INFO", "message":"loaded module [x-pack-monitoring]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.205Z", "log.level": "INFO", "message":"loaded module [repository-s3]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.205Z", "log.level": "INFO", "message":"loaded module [x-pack-analytics]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.206Z", "log.level": "INFO", "message":"loaded module [x-pack-ent-search]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.206Z", "log.level": "INFO", "message":"loaded module [x-pack-autoscaling]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.206Z", "log.level": "INFO", "message":"loaded module [lang-painless]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.206Z", "log.level": "INFO", "message":"loaded module [x-pack-ml]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.206Z", "log.level": "INFO", "message":"loaded module [lang-mustache]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.206Z", "log.level": "INFO", "message":"loaded module [legacy-geo]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.206Z", "log.level": "INFO", "message":"loaded module [x-pack-ql]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.206Z", "log.level": "INFO", "message":"loaded module [rank-rrf]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.206Z", "log.level": "INFO", "message":"loaded module [analysis-common]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.207Z", "log.level": "INFO", "message":"loaded module [health-shards-availability]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.207Z", "log.level": "INFO", "message":"loaded module [transport-netty4]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.207Z", "log.level": "INFO", "message":"loaded module [aggregations]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.207Z", "log.level": "INFO", "message":"loaded module [ingest-common]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.207Z", "log.level": "INFO", "message":"loaded module [frozen-indices]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.207Z", "log.level": "INFO", "message":"loaded module [x-pack-identity-provider]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.207Z", "log.level": "INFO", "message":"loaded module [x-pack-text-structure]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.207Z", "log.level": "INFO", "message":"loaded module [x-pack-shutdown]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.208Z", "log.level": "INFO", "message":"loaded module [snapshot-repo-test-kit]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.208Z", "log.level": "INFO", "message":"loaded module [ml-package-loader]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.208Z", "log.level": "INFO", "message":"loaded module [kibana]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.208Z", "log.level": "INFO", "message":"loaded module [constant-keyword]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.208Z", "log.level": "INFO", "message":"loaded module [x-pack-logstash]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.208Z", "log.level": "INFO", "message":"loaded module [x-pack-ccr]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.208Z", "log.level": "INFO", "message":"loaded module [x-pack-graph]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.208Z", "log.level": "INFO", "message":"loaded module [x-pack-esql]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.209Z", "log.level": "INFO", "message":"loaded module [parent-join]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.209Z", "log.level": "INFO", "message":"loaded module [x-pack-enrich]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.209Z", "log.level": "INFO", "message":"loaded module [counted-keyword]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.209Z", "log.level": "INFO", "message":"loaded module [repositories-metering-api]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.209Z", "log.level": "INFO", "message":"loaded module [transform]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.209Z", "log.level": "INFO", "message":"loaded module [repository-azure]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.209Z", "log.level": "INFO", "message":"loaded module [repository-gcs]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.209Z", "log.level": "INFO", "message":"loaded module [spatial]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.209Z", "log.level": "INFO", "message":"loaded module [apm]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.210Z", "log.level": "INFO", "message":"loaded module [mapper-extras]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.210Z", "log.level": "INFO", "message":"loaded module [mapper-version]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.210Z", "log.level": "INFO", "message":"loaded module [x-pack-rollup]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.210Z", "log.level": "INFO", "message":"loaded module [percolator]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.210Z", "log.level": "INFO", "message":"loaded module [x-pack-stack]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.210Z", "log.level": "INFO", "message":"loaded module [data-streams]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.210Z", "log.level": "INFO", "message":"loaded module [reindex]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.210Z", "log.level": "INFO", "message":"loaded module [rank-eval]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.210Z", "log.level": "INFO", "message":"loaded module [x-pack-security]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.211Z", "log.level": "INFO", "message":"loaded module [blob-cache]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.211Z", "log.level": "INFO", "message":"loaded module [searchable-snapshots]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.211Z", "log.level": "INFO", "message":"loaded module [x-pack-slm]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.211Z", "log.level": "INFO", "message":"loaded module [snapshot-based-recoveries]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.211Z", "log.level": "INFO", "message":"loaded module [x-pack-watcher]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.211Z", "log.level": "INFO", "message":"loaded module [old-lucene-versions]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.211Z", "log.level": "INFO", "message":"loaded module [x-pack-ilm]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.211Z", "log.level": "INFO", "message":"loaded module [x-pack-inference]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.212Z", "log.level": "INFO", "message":"loaded module [x-pack-voting-only-node]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.212Z", "log.level": "INFO", "message":"loaded module [x-pack-deprecation]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.212Z", "log.level": "INFO", "message":"loaded module [x-pack-fleet]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.212Z", "log.level": "INFO", "message":"loaded module [x-pack-profiling]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.212Z", "log.level": "INFO", "message":"loaded module [x-pack-aggregate-metric]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.212Z", "log.level": "INFO", "message":"loaded module [x-pack-downsample]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.212Z", "log.level": "INFO", "message":"loaded module [ingest-geoip]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.212Z", "log.level": "INFO", "message":"loaded module [x-pack-write-load-forecaster]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.212Z", "log.level": "INFO", "message":"loaded module [search-business-rules]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.212Z", "log.level": "INFO", "message":"loaded module [ingest-attachment]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.212Z", "log.level": "INFO", "message":"loaded module [wildcard]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.213Z", "log.level": "INFO", "message":"loaded module [x-pack-apm-data]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.213Z", "log.level": "INFO", "message":"loaded module [x-pack-sql]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.213Z", "log.level": "INFO", "message":"loaded module [unsigned-long]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.213Z", "log.level": "INFO", "message":"loaded module [x-pack-async]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.213Z", "log.level": "INFO", "message":"loaded module [runtime-fields-common]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.213Z", "log.level": "INFO", "message":"loaded module [vector-tile]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.213Z", "log.level": "INFO", "message":"loaded module [lang-expression]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.213Z", "log.level": "INFO", "message":"loaded module [x-pack-eql]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.plugins.PluginsService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.731Z", "log.level": "INFO", "message":"using [1] data paths, mounts [[/usr/share/elasticsearch/data (/dev/root)]], net usable_space [242.4gb], net total_space [247.9gb], types [ext4]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.env.NodeEnvironment","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.731Z", "log.level": "INFO", "message":"heap size [512mb], compressed ordinary object pointers [true]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.env.NodeEnvironment","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:02.740Z", "log.level": "INFO", "message":"node name [elasticsearch], node ID [KlF5mTXnQ-2hoW7VctfslQ], cluster name [docker-cluster], roles [data_frozen, ingest, data_cold, data, remote_cluster_client, master, data_warm, data_content, transform, data_hot, ml]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.node.Node","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:05.312Z", "log.level": "INFO", "message":"Registered local node features [data_stream.rollover.lazy, desired_node.version_deprecated, features_supported, health.dsl.info, health.extended_repository_indicator, usage.data_tiers.precalculate_stats]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.features.FeatureService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:05.488Z", "log.level": "INFO", "message":"[controller/240] [Main.cc@123] controller (64 bit): Version 8.13.4 (Build<PHONE_NUMBER>d752) Copyright (c) 2024 Elasticsearch BV", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"ml-cpp-log-tail-thread","log.logger":"org.elasticsearch.xpack.ml.process.logging.CppLogMessageHandler","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:05.674Z", "log.level": "INFO", "message":"Sending apm metrics is disabled", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.telemetry.apm.APM","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:05.674Z", "log.level": "INFO", "message":"Sending apm tracing is disabled", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.telemetry.apm.APM","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:05.693Z", "log.level": "INFO", "message":"Security is enabled", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.xpack.security.Security","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:05.944Z", "log.level": "INFO", "message":"parsed [0] roles from file [/usr/share/elasticsearch/config/roles.yml]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.xpack.security.authz.store.FileRolesStore","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:06.381Z", "log.level": "INFO", "message":"Watcher initialized components at 2024-06-08T14:37:06.381Z", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.xpack.watcher.Watcher","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:06.417Z", "log.level": "INFO", "message":"Profiling is enabled", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.xpack.profiling.ProfilingPlugin","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:06.429Z", "log.level": "INFO", "message":"profiling index templates will not be installed or reinstalled", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.xpack.profiling.ProfilingPlugin","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:06.432Z", "log.level": "INFO", "message":"APM ingest plugin is disabled", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.xpack.apmdata.APMPlugin","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:06.742Z", "log.level": "INFO", "message":"creating NettyAllocator with the following configs: [name=unpooled, suggested_max_allocation_size=1mb, factors={es.unsafe.use_unpooled_allocator=null, g1gc_enabled=true, g1gc_region_size=4mb, heap_size=512mb}]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.transport.netty4.NettyAllocator","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:06.760Z", "log.level": "INFO", "message":"using rate limit [40mb] with [default=40mb, read=0b, write=0b, max=0b]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.indices.recovery.RecoverySettings","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:06.789Z", "log.level": "INFO", "message":"using discovery type [single-node] and seed hosts providers [settings]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.discovery.DiscoveryModule","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:07.715Z", "log.level": "INFO", "message":"initialized", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.node.Node","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:07.715Z", "log.level": "INFO", "message":"starting ...", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.node.Node","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:07.736Z", "log.level": "INFO", "message":"persistent cache index loaded", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.xpack.searchablesnapshots.cache.full.PersistentCache","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:07.737Z", "log.level": "INFO", "message":"deprecation component started", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.xpack.deprecation.logging.DeprecationIndexingComponent","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:07.798Z", "log.level": "INFO", "message":"publish_address {<IP_ADDRESS>:9300}, bound_addresses {[::]:9300}", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.transport.TransportService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:07.895Z", "log.level": "WARN", "message":"max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144]; for more information see [https://www.elastic.co/guide/en/elasticsearch/reference/8.13/_maximum_map_count_check.html]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.bootstrap.BootstrapChecks","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:07.895Z", "log.level": "WARN", "message":"Transport SSL must be enabled if security is enabled. Please set [xpack.security.transport.ssl.enabled] to [true] or disable security by setting [xpack.security.enabled] to [false]; for more information see [https://www.elastic.co/guide/en/elasticsearch/reference/8.13/bootstrap-checks-xpack.html#bootstrap-checks-tls]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.bootstrap.BootstrapChecks","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:07.897Z", "log.level": "INFO", "message":"this node has not joined a bootstrapped cluster yet; [cluster.initial_master_nodes] is set to [elasticsearch]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.cluster.coordination.ClusterBootstrapService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:07.901Z", "log.level": "INFO", "message":"setting initial configuration to VotingConfiguration{KlF5mTXnQ-2hoW7VctfslQ}", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.cluster.coordination.Coordinator","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:08.101Z", "log.level": "INFO", "message":"elected-as-master ([1] nodes joined in term 1)[_FINISH_ELECTION_, {elasticsearch}{KlF5mTXnQ-2hoW7VctfslQ}{q-M5riGWTba8a0_1619KBA}{elasticsearch}{<IP_ADDRESS>}{<IP_ADDRESS>:9300}{cdfhilmrstw}{8.13.4}{7000099-8503000} completing election], term: 1, version: 1, delta: master node changed {previous [], current [{elasticsearch}{KlF5mTXnQ-2hoW7VctfslQ}{q-M5riGWTba8a0_1619KBA}{elasticsearch}{<IP_ADDRESS>}{<IP_ADDRESS>:9300}{cdfhilmrstw}{8.13.4}{7000099-8503000}]}", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"elasticsearch[elasticsearch][masterService#updateTask][T#1]","log.logger":"org.elasticsearch.cluster.service.MasterService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:08.139Z", "log.level": "INFO", "message":"cluster UUID set to [VtH8YYMmRXCl0495OpaX0w]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"elasticsearch[elasticsearch][cluster_coordination][T#1]","log.logger":"org.elasticsearch.cluster.coordination.CoordinationState","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:08.178Z", "log.level": "INFO", "message":"master node changed {previous [], current [{elasticsearch}{KlF5mTXnQ-2hoW7VctfslQ}{q-M5riGWTba8a0_1619KBA}{elasticsearch}{<IP_ADDRESS>}{<IP_ADDRESS>:9300}{cdfhilmrstw}{8.13.4}{7000099-8503000}]}, term: 1, version: 1, reason: Publication{term=1, version=1}", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"elasticsearch[elasticsearch][clusterApplierService#updateTask][T#1]","log.logger":"org.elasticsearch.cluster.service.ClusterApplierService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:08.200Z", "log.level": "INFO", "message":"starting file watcher ...", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"elasticsearch[elasticsearch][clusterApplierService#updateTask][T#1]","log.logger":"org.elasticsearch.common.file.AbstractFileWatchingService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:08.203Z", "log.level": "INFO", "message":"file settings service up and running [tid=69]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"elasticsearch[file-watcher[/usr/share/elasticsearch/config/operator/settings.json]]","log.logger":"org.elasticsearch.common.file.AbstractFileWatchingService","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:08.207Z", "log.level": "INFO", "message":"node-join: [{elasticsearch}{KlF5mTXnQ-2hoW7VctfslQ}{q-M5riGWTba8a0_1619KBA}{elasticsearch}{<IP_ADDRESS>}{<IP_ADDRESS>:9300}{cdfhilmrstw}{8.13.4}{7000099-8503000}] with reason [completing election]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"elasticsearch[elasticsearch][masterService#updateTask][T#1]","log.logger":"org.elasticsearch.cluster.coordination.NodeJoinExecutor","elasticsearch.cluster.uuid":"VtH8YYMmRXCl0495OpaX0w","elasticsearch.node.id":"KlF5mTXnQ-2hoW7VctfslQ","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:08.208Z", "log.level": "INFO", "message":"publish_address {<IP_ADDRESS>:9200}, bound_addresses {[::]:9200}", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.http.AbstractHttpServerTransport","elasticsearch.cluster.uuid":"VtH8YYMmRXCl0495OpaX0w","elasticsearch.node.id":"KlF5mTXnQ-2hoW7VctfslQ","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:08.220Z", "log.level": "INFO", "message":"started {elasticsearch}{KlF5mTXnQ-2hoW7VctfslQ}{q-M5riGWTba8a0_1619KBA}{elasticsearch}{<IP_ADDRESS>}{<IP_ADDRESS>:9300}{cdfhilmrstw}{8.13.4}{7000099-8503000}{ml.allocated_processors=16, ml.machine_memory=67370835968, transform.config_version=10.0.0, xpack.installed=true, ml.config_version=12.0.0, ml.max_jvm_size=536870912, ml.allocated_processors_double=16.0}", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"main","log.logger":"org.elasticsearch.node.Node","elasticsearch.cluster.uuid":"VtH8YYMmRXCl0495OpaX0w","elasticsearch.node.id":"KlF5mTXnQ-2hoW7VctfslQ","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:08.282Z", "log.level": "INFO", "message":"recovered [0] indices into cluster_state", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"elasticsearch[elasticsearch][masterService#updateTask][T#1]","log.logger":"org.elasticsearch.gateway.GatewayService","elasticsearch.cluster.uuid":"VtH8YYMmRXCl0495OpaX0w","elasticsearch.node.id":"KlF5mTXnQ-2hoW7VctfslQ","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:10.046Z", "log.level": "INFO", "message":"Node [{elasticsearch}{KlF5mTXnQ-2hoW7VctfslQ}] is selected as the current health node.", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"elasticsearch[elasticsearch][management][T#2]","log.logger":"org.elasticsearch.health.node.selection.HealthNodeTaskExecutor","elasticsearch.cluster.uuid":"VtH8YYMmRXCl0495OpaX0w","elasticsearch.node.id":"KlF5mTXnQ-2hoW7VctfslQ","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:10.128Z", "log.level": "INFO", "message":"license mode is [trial], currently licensed security realms are [reserved/reserved,file/default_file,native/default_native]", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"elasticsearch[elasticsearch][clusterApplierService#updateTask][T#1]","log.logger":"org.elasticsearch.xpack.security.authc.Realms","elasticsearch.cluster.uuid":"VtH8YYMmRXCl0495OpaX0w","elasticsearch.node.id":"KlF5mTXnQ-2hoW7VctfslQ","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}
{"@timestamp":"2024-06-08T14:37:10.130Z", "log.level": "INFO", "message":"license [e824416e-395d-4dd3-a764-5af11289ec94] mode [trial] - valid", "ecs.version": "1.2.0","service.name":"ES_ECS","event.dataset":"elasticsearch.server","process.thread.name":"elasticsearch[elasticsearch][clusterApplierService#updateTask][T#1]","log.logger":"org.elasticsearch.license.ClusterStateLicenseService","elasticsearch.cluster.uuid":"VtH8YYMmRXCl0495OpaX0w","elasticsearch.node.id":"KlF5mTXnQ-2hoW7VctfslQ","elasticsearch.node.name":"elasticsearch","elasticsearch.cluster.name":"docker-cluster"}

Thanks for the detailed issue report!
It's really strange indeed, especially knowing that our CI pipeline also runs on Ubuntu 22.04, in Azure.

Does the server have enough resources?
Could it be that Elasticsearch simply took a while to start due to 1. and running up setup again solves the issue?

Thanks for that quick answer, strange indeed 😬

Does the server have enough resources?

I think so yes, I would expect the container not to be able to start if that were the case. There is a warning in the logs that the max virtual memory is too low, but I don't think it's related as I'm able to ping the elastic container from the server and get an answer
max virtual memory areas vm.max_map_count [65530] is too low, increase to at least [262144];

Could it be that Elasticsearch simply took a while to start due to 1. and running up setup again solves the issue?

Sadly no, I tried to re-run everything a couple of time and the setup reacts the same even when elastic is started

Maybe the firewall is interfering with the docker-elk bridge. If that's the case, all containers will fail to reach Elasticsearch, no just the setup container. This should be visible in Kibana's logs if you up kibana.

Yes you're right, Kibana can't reach the elastic container as well
kibana-1  | [2024-06-08T20:24:59.579+00:00][ERROR][elasticsearch-service] Unable to retrieve version information from Elasticsearch nodes. Request timed out

Possibly related:

#550

Thanks for the pointer, I had a look and it seems to be a bit different. What you link is about Docker between too permissive and over-writing the rules from the firewall, whereas I'm having the opposite issue 😓
I couldn't spend more time debugging the issue and I installed elastic directly on the server without using Docker. Thanks a lot for your help anyway 🙏

@baptisteem the problem I observed was more about firewalld/ufw getting in the way of the iptables rules written by Docker.
In docker-elk, we have a dedicated Docker network bridge that containers are being attached to:
https://github.com/deviantony/docker-elk/blob/9a51242878031d0187ac88c9947fa12254608fa2/docker-compose.yml#L109-L111
By default, Docker enables containers within the bridge to communicate freely between each other (but isolates them from containers which aren't attached to the bridge). However, your firewall management software might not be aware of this, and instead enforce a block/drop between any sources/destinations which were not explicitly allowed.
As an aside, the reason why you were able to communicate with Elasticsearch from the host is because the port mapping 9200:9200 essentially creates a direct access from the host network namespace to the container, which usually bypasses container-to-container firewall rules.

I am using the same version of Docker and Docker compose, and the elasticsearch container is running, but when I request http://elastic from the setup, Setup container cannot reach elastic with the following error.
setup-1          | HTTP/1.1 302 Found
setup-1          | Server: BlueCoat-Security-Appliance/1.1.00
setup-1          | Location: http://www.elasticsearch.com/
setup-1          | Connection: close
setup-1          | Content-Length: 90
setup-1          |
setup-1          |
setup-1          | Redirection
setup-1          | Redirect
setup-1          |
setup-1          |
setup-1          |    ⠍ Connection to Elasticsearch failed. Exit code: 1
Print the hostname of elastic just to confirm.
setup-1          | [+] Waiting for availability of Elasticsearch. This can take several minutes.
setup-1          | wait for elasticsearch ELASTICSEARCH_HOST=elasticsearch


[bug] BoxKeyError: "dynaconf_merge_unique" with specific YAML files

Describe the bug
I'm getting BoxKeyError: "dynaconf_merge_unique" and AttributeError: 'int' object has no attribute 'lower' when I have a the "exclude" key in a YAML config file.
To Reproduce
Steps to reproduce the behavior:

Having the following folder structure

 Project structure
.
├── config.py
├── settings_test.local.yaml
└── settings_test.yaml

1 directory, 3 files

Having the following config files:

 Config files
settings_test.yaml
default:
  level_1:
    level_2:
      exclude:
        a_mapping:
          1: ["a string"]

and
settings_test.local.yaml
default:
  level_1:
    level_2:
      exclude:
        a_value: .inf

Having the following app code:

 Code
config.py
from pathlib import Path

from dynaconf import Dynaconf

settings = Dynaconf(
    settings_files=[Path(__file__).parent / "settings_test.yaml"],
    merge_enabled=True,
)

print(settings.as_dict())

Executing under the following environment

 Execution
$ python config.py

Expected behavior
The program should print a dict with the settings.
Environment (please complete the following information):

OS: MacOS 13.5.2 (22G91). Mac M1.
Dynaconf Version: 3.2.2
Frameworks in use: Nothing.

Additional context
Works in Dynaconf 3.2.1.

 Full traceback:
Traceback (most recent call last):
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/utils/boxing.py", line 49, in __getitem__
    return super().__getitem__(item, *args, **kwargs)
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/vendor/box/box.py", line 163, in __getitem__
    raise BoxKeyError(str(E)) from _A
dynaconf.vendor.box.exceptions.BoxKeyError: "'dynaconf_merge_unique'"

During handling of the above exception, another exception occurred:

Traceback (most recent call last):
  File "/Users/nix/Dev/my-project/dynaconf_test/config.py", line 10, in <module>
    print(settings.as_dict())
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/base.py", line 122, in __getattr__
    self._setup()
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/base.py", line 183, in _setup
    self._wrapped = self._wrapper_class(
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/base.py", line 271, in __init__
    self.execute_loaders()
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/base.py", line 1160, in execute_loaders
    settings_loader(
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/loaders/__init__.py", line 284, in settings_loader
    loader["loader"].load(
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/loaders/yaml_loader.py", line 96, in load
    loader.load(
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/loaders/base.py", line 83, in load
    self._envless_load(source_data, silent, key)
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/loaders/base.py", line 124, in _envless_load
    self._set_data_to_obj(
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/loaders/base.py", line 210, in _set_data_to_obj
    self.obj.update(
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/base.py", line 1060, in update
    self.set(
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/base.py", line 994, in set
    parsed, source_metadata = self._merge_before_set(
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/base.py", line 1103, in _merge_before_set
    value = object_merge(existing, value)
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/utils/__init__.py", line 98, in object_merge
    object_merge(
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/utils/__init__.py", line 98, in object_merge
    object_merge(
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/utils/__init__.py", line 98, in object_merge
    object_merge(
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/utils/__init__.py", line 104, in object_merge
    handle_metavalues(old, new)
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/utils/__init__.py", line 169, in handle_metavalues
    "dynaconf_merge", new[key].pop("dynaconf_merge_unique", None)
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/vendor/box/box.py", line 224, in pop
    try:D=B[A]
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/utils/boxing.py", line 21, in evaluate
    value = f(dynabox, item, *args, **kwargs)
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/utils/boxing.py", line 51, in __getitem__
    n_item = find_the_correct_casing(item, self) or item
  File "/Users/nix/Dev/my-project/.venv/lib/python3.10/site-packages/dynaconf/utils/__init__.py", line 476, in find_the_correct_casing
    if k.lower() == key.lower():
AttributeError: 'int' object has no attribute 'lower'

Did a bisect, looks like 9ca687a4e6df9d67cf060a1fe092a782a256ec24 introduced the issue.

Hey @sebastian-correa,
Not sure about merge_unique exception, but the int exception is probably related to this (see #969 for context). TLDR, we should allow arbitrary types in setting keys.


v1.3 backports 2019-02-27

#7213 -- endpoint: Fix ENABLE_NAT46 endpoint config validation (@brb)

I had to rebase this as we previously could only disable ipv4, minor conflict.

#7214 -- pkg/kvstore: add 15 min TTL for the first session lease (@aanm)
#7148 -- Fix policy drops on restart due to lack of kvstore sync (@tgraf)

@tgraf, please look closely at these commits as they had quite a few conflicts

#7217 -- workloads: Synchronous handling of container events (@tgraf)

Once this PR is merged, you can update the PR labels via:
$ for pr in 7213 7214 7148 7217; do contrib/backporting/set-labels.py $pr done 1.3; done

This change is

test-me-please

test-docs-please

test-me-please

test-me-please

test-missed-k8s

test-docs-please

test-docs-please


Remove SimpleHash

This fixes #2331.
As @asterite already mentioned it leads to confusion and there's no use case for this since the performance difference is negligible.

There's stray require left in src/docs_main.cr.

Fixed. Thanks @Sija

@sdogruyol Good idea! Yes, SimpleHash doesn't have a clear use case, Hash is usually faster. Thank you!

Thank you ❤


.Net: Remove experimental flag from VectorStore implementations.

Motivation and Context
As part of graduating vector stores we want to remove the experimental flag from the implementations and only keep them on memory store implementations.
#8539
Description

Remove experimental flag from packages with vector store implementations.
Add experimental flag to any memory store files in the same package.
Clean up warning suppressions in vector store projects.

Contribution Checklist

[x] The code builds clean without any errors or warnings
[x] The PR follows the SK Contribution Guidelines and the pre-submission formatting script raises no violations
[x] All unit tests pass, and I have added new tests where possible
[x] I didn't break anyone :smile:

What does it mean to remove [Experimental] here when the abstractions themselves are still preview?

@stephentoub, our projects are also still in preview and we are keeping them like that for now.  We are just removing the experimental flag.  The way we are thinking about this is that experimental conveys a lower level of maturity than preview does, and having both may be confusing.

Ah, didn't realize the projects were preview.


on start should contain initialised values

javascript contains:
let url = ""
for blocks -> code maybe on start should clearly show initialised value

consider the use of a cog icon in on start to do the same stuff as the Variables
And really, get rid of the Variables item ...

The Variables item is not present in JavaScript choices (of course)
Allowing variables in on start makes for the same structure blocks and javascript

The use of string in the example should not be taken as string is a must: the same point is for non-string

Strings are not a core scenario in blocks - use JS

let url = "" does the right thing for me. Share the full js. Closing till then.

If I ask a student, what will the following show, there is no immediate answer as the student needs to know that the value would be 0 if not set.
This is in contradiction to javascript, where the same exercise would give a response as it can be seen in the javascript
An awareness of initialised values is not built up in blocks

let item = 0
basic.forever(() => {
basic.showNumber(item)
})


Hard time limit on holding offers for Fenzo

Currently, Fenzo supports releasing offers at a fixed rate. In order to have a Fenzo-scheduled framework function in a multiframework environment, it's important for every offer to be declined in a timely manner if it isn't used. For example, another framework may have specific constraints or properties it's looking for in an agent--currently, it's possible for Fenzo to hold onto an offer for many minutes (if you're unlucky on a very large cluster). This can negatively impact other frameworks that are looking for very specific hosts.
The solution I'd like to see is the ability to configure a maximum time to hold an offer before declining it; this way, a Fenzo-based framework could choose to hold no offers for longer than 30 seconds; this would greatly benefit multi-framework Mesos clusters.

@dgrnbrg it turns out you can achieve this already by setting the maximum offers to reject to a large number. That is, effectively telling Fenzo to not limit the number of offers to reject upon offer expiry. Here's one way to set the maximum to a large number:
final TaskScheduler scheduler = new TaskScheduler.Builder()
                .withLeaseRejectAction(new Action1<VirtualMachineLease>() {
                    @Override
                    public void call(VirtualMachineLease virtualMachineLease) {
                        ...
                    }
                })
                .withLeaseOfferExpirySecs(leaseExpirySecs)
                .withMaxOffersToReject(Integer.MAX_VALUE)
                .build();

Fenzo will then reject all leases whose offered time is more than leaseExpirySecs seconds ago.
However, note that the action to check which offers to reject is carried out only at the end of TaskScheduler.scheduleOnce() method. So you must routinely call that method for offers to expire timely.
I will enhance documentation to make this clearer.
Does this work for you?

That should work, thanks! I wonder if there's benefit in making rejecting all offers into another builder method, vs. requiring the user to treat it as a special case of the rejection logic. Either way, that will solve the problem.

Fenzo 0.8.2 has a new convenience mthod in the builder, withRejectAllExpiredOffers(), for this.

Thank you!


Formalize new feature freeze guidelines

At the 2018 coordination meeting we discussed how to rename/reorganize the feature freeze so that we don't have all PRs opened a few days before the actual branching. We should figure out where this should be written down.

@pllim @astrofrog Can this be closed?


Feature request

Lock permissions, users, keypad, fob.
Controlling users or devices remotely would be useful.

What exactly is your use case. There a lot of things covered by the ble API, adding all of those in an MQTT API could prove difficult. Do you just want to enable/disable existing authorizations?

Thanks for your answer.
I am interested in being able to cancel access to a specific FOB, for example if I am outside my network and want to prevent the entry of a guest.
Effectively I want to enable/disable existing authorizations.
De: Jan-Ole Schümann @.>
Enviado el: domingo, 30 de abril de 2023 21:51
Para: technyon/nuki_hub @.>
CC: Eguar @.>; Author @.>
Asunto: Re: [technyon/nuki_hub] Feature request (Issue #183)
What exactly is your use case. There a lot of things covered by the ble API, adding all of those in an MQTT API could prove difficult. Do you just want to enable/disable existing authorizations?
—
Reply to this email directly, view it on GitHub https://github.com/technyon/nuki_hub/issues/183#issuecomment-1529125674 , or unsubscribe https://github.com/notifications/unsubscribe-auth/AR6YFSH74KNSVOGX3ENOTD3XD27DFANCNFSM6AAAAAAXQDVGKM .
You are receiving this because you authored the thread.  https://github.com/notifications/beacon/AR6YFSAQAPWEYEIPOBMBA4TXD27DFA5CNFSM6AAAAAAXQDVGKOWGG33NNVSW45C7OR4XAZNMJFZXG5LFINXW23LFNZ2KUY3PNVWWK3TUL5UWJTS3ESNSU.gif Message ID: @.*** @.***> >

Hi,
Just enabling or disabling existing authorizations should be possible, but it's not a small feature request. I'll look into and and see what I can do.

Thanks, with that nuki_hub would cover everything that I previously did through the web.
Thank you also for sharing your work, I have applied it and it is working perfectly.


Gramework support?

Swag have suppport for several web frameworks, but here support may be a bit tricky. May it be done officially?

May it be done officially?

What you mean? I don't understand.

@easonlin404 sorry. I mean may Gramework support be done by @swaggo just like https://github.com/swaggo/gin-swagger?

@kirillDanshin   ok. I will create to supported Gramework. Thanks for your comments. 😄


MONDO:0011929 xref & def showing for all ORPHA terms in HPO browser

@matentzn helpfully brought me here! Sorry I'm not much help I originally thought this was a HPOA/HPO website issue.
Bug/Typo/Error description
Currently all ORPHA diseases display an incorrect MONDO xref to MONDO:0011929. I came across this browsing ORPHA term annotations on the HPO website.
The definition is the same (incorrect again from MONDO:0011929) for each ORPHA disease as well.
OMIM MONDO xrefs look good though! (At least browsing via HPO)
Originally posted:
TheJacksonLaboratory/hpo-web#289

Dear @peupeubangbang,
Thank you for reaching out to the Mondo Disease Ontology, part of the Monarch Initiative!
We have received your ticket and will review it as soon as possible.
If you have any additional information or updates relevant to your inquiry, please add them in a comment on this ticket. Your input is valuable in helping us understand and resolve the issue effectively.
Thank you for your patience and for your contributions to Mondo!
Sincerely,
The Mondo Team

The exact same xref was reported by another user on slack (@bryanlaraway), so it may be worth getting to the bottom of this.

@peupeubangbang can you add a link to the HPO browser for one of the HPO terms that displays this issue?

Here's the one I encountered first: https://hpo.jax.org/browse/disease/ORPHA:84

Thanks @bryanlaraway!
I don't see how this is an issue in Mondo. The ID for "Fanconi anemia" in Mondo is [MONDO:0019391](https://www.ebi.ac.uk/ols4/ontologies/mondo/classes/http%253A%252F%252Fpurl.obolibrary.org%252Fobo%252FMONDO_0019391) not MONDO:0011929 as shown on the HPO site and web service.
There are only 4 terms in Mondo with xrefs to Orphanet:84 (assuming that is what the HPO site is using this Orphanet ID) and these Mondo terms are all related to "Fanconi anemia".
@matentzn why do you think this is a problem with Mondo and not the HPO web site?

I asked Nico to review these findings and he said he contacted the HPO folks and it's because a wrong relationship on the HPO website (xref instead of skos:exactMatch) is being used. Closing this issue since it's not a Mondo issue.


Cannot see generated files in dev-server

Hi there,
I'm using this plugin together with HtmlWebpackPlugin and HtmlWebpackTemplate
It works fine while bundling, i.e. generating the folders with the icons and the rest. However when using the dev server such files are emitted but are not created, i.e. when browsing the
http://localhost:<port>/webpack-dev-server URL I cannot see the folder with the icons listed and when the browser requests, for instance, a favicon, I get a 404:
http://localhost:<port>/icons-<hash>/favicon.ico
response: Cannot GET /icons-1a4ee607/favicon.ico
This is a bit annoying when developing. How can I check if I'm doing something wrong? Or is this just a bug?
Al plugins are latest versions and so is webpack
Configuration
const webpackTemplate = require('html-webpack-template')
const HtmlWebpackPlugin = require('html-webpack-plugin')
const AppManifestWebpackPlugin = require('app-manifest-webpack-plugin')

...
  const html = new HtmlWebpackPlugin({
    inject: false,
    title: globals.title,
    template: webpackTemplate,
    mobile: true,
    appMountId: globals.appMountId,
    meta: getMetas(contentSecurityPolicy),
    links: getLinks(LINKS),
    lang: 'en',
    filename: 'index.html',
    // favicon: path.join(appDirectory, srcDirectory, 'assets', 'favicons', 'favicon.ico'),
    chunks: chunkNames,
    scripts: getScripts(SCRIPTS),
    window: globalVars
  })

const appManifest = new AppManifestWebpackPlugin({
    logo: path.resolve(srcDirectory, 'assets', logoFileName),
    emitStats: true,
    inject: true,
    statsFilename: 'iconstats.json',
    persistentCache: true,
    // Prefix for file names (html will be container icons with this prefix)
    prefix: globals.publicPath,
    // Output path for icons (icons will be saved to output.path(webpack config) + this key)
    output: '/icons-[hash:8]/',
    config: {
      appName: globals.title, // Your application's name. `string`
      appDescription: globals.description, // Your application's description. `string`
      developerName: 'Mobile Solutions LINKS Foundation', // Your (or your developer's) name. `string`
      developerURL: 'https://linksfoundation.com/en/about/research-areas/', // Your (or your developer's) URL. `string`
      background: backgroundColor, // Background colour for flattened icons. `string`
      theme_color: chromeThemeColor, // Theme color for browser chrome. `string`
      display: 'standalone', // Android display: "browser" or "standalone". `string`
      orientation: 'portrait-primary', // Android orientation: "portrait" or "landscape". `string`
      start_url: `${globals.publicPath}index.html`, // Android start application's URL. `string`
      version: '1.0', // Your application's version number. `number`
      logging: true, // Print logs to console? `boolean`
      icons: {
        // Platform Options:
        // - offset - offset in percentage
        // - shadow - drop shadow for Android icons, available online only
        // - background:
        //   * false - use default
        //   * true - force use default, e.g. set background for Android icons
        //   * color - set background for the specified icons
        //
        android: true, // Create Android homescreen icon. `boolean` or `{ offset, background, shadow }`
        appleIcon: true, // Create Apple touch icons. `boolean` or `{ offset, background }`
        appleStartup: true, // Create Apple startup images. `boolean` or `{ offset, background }`
        coast: false, // Create Opera Coast icon with offset 25%. `boolean` or `{ offset, background }`
        favicons: true, // Create regular favicons. `boolean`
        firefox: true, // Create Firefox OS icons. `boolean` or `{ offset, background }`
        windows: true, // Create Windows 8 tile icons. `boolean` or `{ background }`
        yandex: false // Create Yandex browser icon. `boolean` or `{ background }`
      }
    }
  })

const plugins = [html, appManifest ...]

globals.publicPath is '/' in dev-server mode in my setup.

After some try/fail/repeat I found out that setting
output: './'
works.
Also
    // Prefix for file names (html will be container icons with this prefix)
    prefix: `${globals.publicPath}icons/`,
    // Output path for icons (icons will be saved to output.path(webpack config) + this key)
    output: './icons/'

works (with globals.publicPath ending in '/'). Using hash:8 screws up everything since it's not supported in prefix.
Other settings do not work for me, because of a MemoryFileSystem EACCESS permission denied error 😕 which I found out using webpack --verbose
Hope this helps fixing bugs (if any) or other people struggling against similar issues.

Thanks, that helps. You can still use the hash for production builds like this:
    prefix: publicPath + (process.env.NODE_ENV === 'production' ? '/' : '/icons'),
    output: process.env.NODE_ENV === 'production' ? '/icons-[hash:8]/' : './icons/',


fix fails on non-rego files

Summary
The new fix command fails to ignore non-rego files, and fails to complete
In depth
Trying to use the new fix command in elastic/cloudbeat/security-policies and I'm getting:
❯ regal fix security-policies
\failed to fix: failed to generate linter input: failed to parse module security-policies/.gitignore: failed to parse module: 1 error occurred: security-policies/.gitignore:1: rego_parse_error: unexpected div token
        /output.json
        ^

Even though regal lint works and shows the following format issues:
❯ regal lint security-policies
Rule:           messy-rule
Description:    Messy incremental rule
Category:       style
Location:       security-policies/bundle/compliance/cis_aws/rules/cis_4_1/rule.rego:30:1
Text:           rule_evaluation = trail.at_least_one_trail_satisfied([required_pattern])
Documentation:  https://docs.styra.com/regal/rules/style/messy-rule

I tried to add the following part to .regal/config.yaml:
# list of paths that should be ignored
ignore:
  files:
    - .gitignore

But that didn't help.
Env information
Platform: darwin/arm64
OPA version: 0.61.0
Regal version: 0.22.0
Go Version: 1.22.0

Thanks for reporting that @oren-zohar! That looks like an oversight, and should be fairly simple to fix for the next release. We'll look into it 👍

Hey, I have https://github.com/StyraInc/regal/pull/762 open for this now. Feel free to test this out if you like.
I noticed that you have a built-in function that's called contains in the codebase, this is going to cause issues when applying the rego.v1 fix since contains will then be a keyword. It'd be ideal to rename or refactor this to avoid such issues.

One other option would be to use a quoted ref, but that'd not be recommended and is removed by the opa fmt command anyway. Thanks Anders for opening https://github.com/open-policy-agent/opa/issues/6766


fix: missing npmrc generation step

:tada: This PR is included in version 1.0.5 :tada:
The release is available on GitHub release
Your semantic-release bot :package::rocket:


Revert "Roll Engine from 165abef0a2cb to e979c29a2a50 (42 revisions)"

Reverts flutter/flutter#65178
This is causing the android hybrid views test to fail with numerous GL errors:
2020-09-03T10:28:38.615987: stdout: [   +1 ms] E/flutter (11984): [ERROR:flutter/shell/platform/android/android_context_gl.cc(124)] Could not make the context current
2020-09-03T10:28:38.616421: stdout: [        ] E/flutter (11984): [ERROR:flutter/shell/platform/android/android_context_gl.cc(53)] EGL Error: EGL_BAD_ACCESS (12290)
2020-09-03T10:28:38.616513: stdout: [        ] E/flutter (11984): [ERROR:flutter/shell/gpu/gpu_surface_gl.cc(242)] Could not make the context current to acquire the frame.

@zanderso @blasten

Landing on red to fix build


Not uploading chunks

After uploading to NFTs, does not mint more. The subsequent NFT transaction ids show up in the wallet's list of transactions, but the transaction in the transaction collection does not have any offsets.

Flowergirl.png and chewy.jpeg both work for repeated uploads, but doge and qr code which are also both pngs do not work.

Getting the following issue after trying to upload this screenshot:

Last error seems to have been random. Worked the second try.

If only one chunk, data added to body and sent to /tx endpoint. Just needed to check for this in POST /tx and as chunk: { "0": data}}


ActiveForm not use redefine id from options in js

What steps will reproduce the problem?
        <?= $form->field($model, $attribute = 'is_matching_registration')->checkbox([
            'id' => $idPrefix . '-' . $attribute,
        ]); ?>

What is the expected result?
errors fill to checkbox
What do you get instead?
id for js is not redefine
id: "relativeaddressofregistration-settlement"
input: "#relative-0-addressofregistration-settlement"
error not fill to field
Additional info

Q
A

Yii version
2.0.?

PHP version
7.3

Operating system

1.add field to activeForm
2.redefine id in options
        <?= $form->field($model, $attribute = 'is_matching_registration')->checkbox([
            'id' => $idPrefix . '-' . $attribute,
        ]); ?>

3 fill errors with new id from js
                form.yiiActiveForm('updateMessages', data.error.messages, true);

note: in https://github.com/yiisoft/yii2/blob/master/framework/assets/yii.activeForm.js
                data = $form.data('yiiActiveForm'),

representation of field have original ID, not id from options

Isn't data = $form.data('yiiActiveForm'), supposed to use names, not IDs?

https://github.com/yiisoft/yii2/blob/eb7b23d117664ee61ab08c15072ee1a3fa01ef66/framework/assets/yii.activeForm.js#L278-L288
attributes use id for any case I think
https://github.com/yiisoft/yii2/blob/eb7b23d117664ee61ab08c15072ee1a3fa01ef66/framework/assets/yii.activeForm.js#L478-L487
https://github.com/yiisoft/yii2/blob/eb7b23d117664ee61ab08c15072ee1a3fa01ef66/framework/assets/yii.activeForm.js#L793-L795


Fixed: use a new packet log level so we can turn it on for trace but …

…not debug

Codecov Report

Merging #211 into master will increase coverage by 0.01%.
The diff coverage is 25%.

@@            Coverage Diff             @@
##           master     #211      +/-   ##
==========================================
+ Coverage   48.87%   48.89%   +0.01%
==========================================
  Files          33       33
  Lines        4235     4236       +1
==========================================
+ Hits         2070     2071       +1
  Misses       1969     1969
  Partials      196      196

Impacted Files
Coverage Δ

enforcer/utils/packet/packet.go
21.69% <25%> (+0.26%)
:arrow_up:

Continue to review full report at Codecov.

Legend - Click here to learn more
Δ = absolute <relative> (impact), ø = not affected, ? = missing data
Powered by Codecov. Last update 5118323...b80cc38. Read the comment docs.


mTLS Client Certificates to be supported by the provider

Current Terraform and Cloudflare provider version
Terraform v1.0.5
on windows_amd64
+ provider registry.terraform.io/cloudflare/cloudflare v3.3.0

Description
The current version of the provider doesn't support the creation of Client Certificates that can be used for mTLS authentication. Based on the documentation [https://registry.terraform.io/providers/cloudflare/cloudflare/latest/docs] only the cloudflare_access_mutual_tls_certificate resource is supported.
Use cases
To create/revoke/delete Client Certificates with Infrastructure-as-code in mind the provider should be able to manage these certs from code.
Potential Terraform configuration
resource "cloudflare_mutual_tls_client_certificate" "my_cert" {
  zone_id                 = "1d5fdc9e88c8a8c4518b068cd94331fe"
  name                    = "My Client Cert"
  private_key_type        = "managed"
  validity                = "10"
}

References
No response

i think this is a duplicate of #1044. please sing out if it's not and we can revisit to different the issues from one another.


AP is always -1, using the pascal voc 2007 dataset

I trained and then tested the model on the pascal voc 2007 dataset and got AP==-1. I did not change anything in the code. So what should I do ?
im_detect: 4950/4952 0.174s 0.002s
im_detect: 4951/4952 0.174s 0.002s
im_detect: 4952/4952 0.174s 0.002s
Evaluating detections
Writing aeroplane VOC results file
Writing bicycle VOC results file
Writing bird VOC results file
Writing boat VOC results file
Writing bottle VOC results file
Writing bus VOC results file
Writing car VOC results file
Writing cat VOC results file
Writing chair VOC results file
Writing cow VOC results file
Writing diningtable VOC results file
Writing dog VOC results file
Writing horse VOC results file
Writing motorbike VOC results file
Writing person VOC results file
Writing pottedplant VOC results file
Writing sheep VOC results file
Writing sofa VOC results file
Writing train VOC results file
Writing tvmonitor VOC results file
VOC07 metric? Yes
AP for aeroplane = -1.0000
AP for bicycle = -1.0000
AP for bird = -1.0000
AP for boat = -1.0000
AP for bottle = -1.0000
AP for bus = -1.0000
AP for car = -1.0000
AP for cat = -1.0000
AP for chair = -1.0000
AP for cow = -1.0000
AP for diningtable = -1.0000
AP for dog = -1.0000
AP for horse = -1.0000
AP for motorbike = -1.0000
AP for person = -1.0000
AP for pottedplant = -1.0000
AP for sheep = -1.0000
AP for sofa = -1.0000
AP for train = -1.0000
AP for tvmonitor = -1.0000
Mean AP = -1.0000
Results:
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000
-1.000

I print the dets and the list is empty

I used lr==0.00001 and the loss has converged... I don't know the reason why it could not detect anything?

@Zealoe I met the same problem, have fixed it?

i also met the same problem, have fixed it?

@hxf930620 try use pre-trained model
Hope you can succeed :D

@indestinee   I changed the VGG16 network and the result turned to -1，do you know why?


My thought about how to implement pencil

What pencil look like:
See the demo: https://codepen.io/michaelsboost/pen/cnCAL .
I just search whiteboard and it give me this one.
How to implement pencil ?
Any irregular curve consists of several straight lines.
The data structure of Pencil
type PencilShape {
  x1: number,
  y1: number,
  x2: number,
  y2: number
}

type Pencil {
  box: {
    minX: number,
    minY: number,
    maxX: number,
    maxY: number
  },
  shape: PencilShape[],
}

PencilShape means the start point and end point.
So Pencil.shape means a series of straight lines (A freely drawn curve)
Pencil.box means the outline of box.
when user mousedown,  we record the lastPoint (x1, y1),
and when user mousemove, we get the current position (x2, y2)
[x1, y1, x2, y2] is one of Pencil.shape.
if user mousemove continue, we will get the new position: [x2, y2, x3, y3].
we need store it to the shape: [[x1, y1, x2, y2], [x2, y2, x3, y3]].The actual array is going to be very long, like:[[x1, y1, x2, y2], [x2, y2, x3, y3], [x3, y3, x4, y4].
When you actually save the shape, you'll find that there's a lot of duplication in the data store because the end of the last two arguments in the first array is the beginning of the second array.
we should  consider the frequency of data collection, otherwise the array will be extremely large.
In addition, we need to calculate the size of the whole rectangle area.The best way to do this is to compare a point(x, y) when we save it and save the compare result into box.

Sorry, I submit the wrong repo...
It should be here https://github.com/excalidraw/excalidraw/issues/707


Create data

There is no explanation or discussion accompanied with this PR so I have no idea what this PR is for.
Closing this.


Update dependencies

Summary of changes

Additions

  {
  "charset-normalizer": "2.0.3",
  "tomli": "1.0.4"
}

Deletions

  {
  "chardet": "4.0.0"
}

Updates

  {
  "cffi": "1.14.5 -> 1.14.6",
  "idna": "2.10 -> 3.2",
  "packaging": "20.9 -> 21.0",
  "pandas": "1.3.0rc1 -> 1.3.0",
  "pillow": "8.2.0 -> 8.3.1",
  "python-dateutil": "2.8.1 -> 2.8.2",
  "requests": "2.25.1 -> 2.26.0",
  "tqdm": "4.61.1 -> 4.61.2",
  "black": "21.6b0 -> 21.7b0",
  "regex": "2021.4.4 -> 2021.7.6"
}

Auto-generated by create-pull-request

Tried to rebuild the docker image and got an error due to the pandas version. This PR updates it, so hopefully it will fix the build. https://github.com/Breakthrough-Energy/PostREISE/runs/3090412738?check_suite_focus=true


mediawiki: update nixos-20.03 to 1.35.0

Motivation for this change
Bringing this up to current - same version that is in current master. (see #102706 for 20.09)
Fixes Security Issues:
#100309 #99810 #92873 #90881
Things done

[X] Tested using sandboxing (nix.useSandbox on NixOS, or option sandbox in nix.conf on non-NixOS linux)
Built on platform(s)

[X] NixOS
[ ] macOS
[ ] other Linux distributions

[ ] Tested via one or more NixOS test(s) if existing and applicable for the change (look inside nixos/tests)
[ ] Tested compilation of all pkgs that depend on this change using nix-shell -p nixpkgs-review --run "nixpkgs-review wip"
[X] Tested execution of all binary files (usually in ./result/bin/)
[ ] Determined the impact on package closure size (by running nix path-info -S before and after)
[X] Ensured that relevant documentation is up to date
[X] Fits CONTRIBUTING.md.

Are there breaking changes? If so it is maybe a better idea to update to 1.34.4.

Concur - switching to 1.34.4

@andir

This is targeting the wrong branch. It should go to release-20.03. nixos-20.03 is here to reflect what has passed hydra.
While add it please add more context to the commit message.

Thank you for your contribution. Unfortunately it is not in a state to be merged as-is, and NixOS 20.03 is EOL as of today.
Closing.


Alternative Services

Currently LLM providers like Anthropic, Google, and Mistral, are being competitive relative to OpanAI.
Also services like OpenRouter can flatten the price table for interoperability between different services.
Could these other things be integrated to the Tokenizer?
Bonus: Ollama and SLMs, and instead of price, get token count and velocity (relative to eGPU performance)

Agreed, will look into it now, thanks for the feedback! Some thoughts - I'm currently working on getting weekly updated pricing charts, though this would have to work with an internet connection. The rate at which available tokenizers grow is alarming to me though and I may just have a custom add option where you can input the pricing/model directly. And maybe have the top couple of models available as presets. Would love to hear your thoughts, and again thanks for the feedback!


[Bug] [Project] Create project error By running the dolphinschedualer with mysql-image added

Search before asking

[X] I had searched in the issues and found no similar issues.

What happened
Create project error By running the dolphinschedualer with mysql-image added
What you expected to happen
create project -> write the project name -> submit -> success
How to reproduce
Please reply several causes of problems
Anything else
No response
Version
1.3.9
Are you willing to submit PR?

[ ] Yes I am willing to submit a PR!

Code of Conduct

[X] I agree to follow this project's Code of Conduct

Now I catch the rogue who caused this error with Fei’s help.
When we enter the container by "docker exec -it", we can see the soft_version is 1.4.0 , so "1.4.0-dolphinscheduler_ddl.sql" are executed when upgrading the postgresql at "/opt/apache-dolphinscheduler-1.3.9-alpha-bin/sql/upgrade/1.4.0_schema/postgresql".
But the running dolphin's version is 1.3.9.
All in all, maybe  you need to provide a 1.3.9-sql or recheck the upgrade logic.


Add timestamp to filename while saving output of gcp scan

This PR fixes #79 .
Reason of Bug
The current src/gcp_scanner/scanner.py file in the codebase, creates a JSON file with the name of the project to store the output of the scan. If the file already exists, it opens the same file in the append mode and appends the output of the scan to the same file.
Approach to fix the bug
I added the timestamp of the scan to the name of the output file while writing the scan results. In this way, for every scan, there will be different output files where the output would be written into.
Before the changes
The output gets appended to same file in case of multiple scans.
In the picture shown below, I use gcp_scan three times and I have shown the size of the output file after each scan.

The wc command outputs the number of lines in the file to terminal. It can be clearly seen after each scan the number of lines in the output file gets increased by 2484. This indicates the output is appended to the same file.
After the changes
The output gets written to different files with unique timestamps of the scan.
In the picture shown below, I used gcp_scan three times and I have shown the list of files present in the output directory after each scan.

It can be clearly seen that after each scan, the number of files increases based on the timestamp of the scan. Thus, the output is written to new files.
Note
Feel free to let me know if any changes are required in the current PR. Thanks a ton! :)
Checklist

[ ] I have read and followed the contributing guidelines.
[ ] I have tested my changes thoroughly and they work as expected.
[ ] I have added necessary tests for the changes made.
[ ] I have updated the documentation to reflect the changes made.
[ ] My code follows the project's coding style and standards.
[ ] I have added appropriate commit messages and comments for my changes.

I like this change but one small thing that I notice immediately. Please don't use ":" in output filenames as this will not work well on Windows and MacOS.

@ZetaTwo Thank you for your comment. Fair point really. I just used colon to distinguish between the date and time in the filename. In that case we might try out other combinations. I am listing a few below:

filename-07-03-2023_20-58-30.json
filename-07/03/2023-20-58-30.json
filename-07/03/2023-20.58.30.json

Feel free to let me know the best convention that we should follow! Thank you :)

I think filename-YYYY-MM-DD_HH-MM-SS.json is the best.

@ZetaTwo Worked on your suggestion with the latest commit. The new format is filename-YYYY-MM-DD_HH-MM-SS.json!

LGTM

Fixed all comments in #134, thanks for the PR. closing this PR now.


add account linking config when creating sddc

Signed-off-by: Tianhao He<EMAIL_ADDRESS>

Is VMC_PROVIDER explained anywhere? Also, I think we should be careful about picking up a 3rd party package for printing tables.


Increase security by limiting permissions of lambda code

LambdaFromString currently loads lambda code without any validation - the code might do anything (call System.exit(0), use file system, send network packets and so on). Letting someone provide a code for lambda and then loading and executing it is as secure as giving that person permission to edit application code. Java platform usually uses SecurityManager to limit permissions of classes that are loaded from external sources. LambdaFromString could probably use that to do the same.

If it could be limited to mathematical operations, this could be useful.