{"id":20252626,"url":"https://github.com/streamdal/event-generator","last_synced_at":"2025-03-03T16:43:01.779Z","repository":{"id":110652428,"uuid":"351322577","full_name":"streamdal/event-generator","owner":"streamdal","description":"CLI tool for generating thousands of dummy events on the Batch platform.","archived":false,"fork":false,"pushed_at":"2023-04-26T22:36:02.000Z","size":13236,"stargazers_count":0,"open_issues_count":0,"forks_count":2,"subscribers_count":4,"default_branch":"main","last_synced_at":"2025-01-14T03:10:54.175Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":"","language":"Go","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/streamdal.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null}},"created_at":"2021-03-25T05:45:23.000Z","updated_at":"2023-02-08T19:30:54.000Z","dependencies_parsed_at":null,"dependency_job_id":"3153a276-aee5-48b7-896a-99a90080e120","html_url":"https://github.com/streamdal/event-generator","commit_stats":null,"previous_names":["batchcorp/event-generator"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/streamdal%2Fevent-generator","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/streamdal%2Fevent-generator/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/streamdal%2Fevent-generator/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/streamdal%2Fevent-generator/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/streamdal","download_url":"https://codeload.github.com/streamdal/event-generator/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":241703619,"owners_count":20006220,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":[],"created_at":"2024-11-14T10:17:39.930Z","updated_at":"2025-03-03T16:43:01.758Z","avatar_url":"https://github.com/streamdal.png","language":"Go","readme":"event-generator\n===============\n\nGenerate fake events and push them to various outputs such as Kafka or directly\nto the Batch gRPC collectors.\n\n# Usage\n\n```bash\nevent-generator \\\n  --type search \\\n  --count 100000 \\\n  --batch-size 1000 \\\n  --output batch-grpc-collector \\\n  --address grpc-collector.dev.batch.sh:9000 \\\n  --token $COLLECTION_TOKEN\n```\n\n# Continuous Mode\n\nIt is possible to run the event generator in \"continuous\" mode. This will keep\ngenerating events and pushing them to the configured output.\n\nYou can set a random send interval (based on a duration range such as `1s:10s` \nor `1m:10m`) to simulate a more realistic event generation. You can also set a \nrandom count (also using a range such as `1:100`).\n\nSending 1-1000 events every 1-10 seconds, with a 1s to 5s random sleep (in-between sends) would look like this:\n\n```bash\n$ event-generator \\\n  --type search \\\n  --count 1:1000 \\\n  --token=9d793160-f0b8-4222-a7af-04806485a9da \\\n  --continuous 1s:10s \\\n  --continuous-interval 1s:10s \\\n  --sleep 1s:5s\n```\n\n# Performance\n\n```bash\n$ time go run main.go \\\n  --type search \n  --count 100000 \\\n  --batch-size 1000 \\\n  --workers 20 \\\n  --destination-type batch-grpc-collector\n\n4.31s user 0.93s system 86% cpu 6.078 total\n```\n\n# Available Types\n\n* `billing`\n* `search`\n* `products`\n* `users`\n* `posts`\n* `weather`\n* `coins`\n\nNOTE: API shape for the fake events is inspired by real, public APIs, dummyjson.com\nand _imagination_. Needless to say, the data is not real :-)\n\n# Schema\n\nAll events use the schema defined in the [batchcorp/schemas](https://github.com/batchcorp/schemas/tree/master/fakes/event-generator) repo. \n\nAll generated events use the `fakes.Event` envelope.\n","funding_links":[],"categories":[],"sub_categories":[],"project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstreamdal%2Fevent-generator","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fstreamdal%2Fevent-generator","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fstreamdal%2Fevent-generator/lists"}