Set up </DANSDAY> Bot

From adding the bot to configuring every module, field by field. Everything is set in the browser; members use it through the Discord menu.

Get started

Three steps take you from nothing to a configurable server.

1

Add the bot

It joins and greets the server with the docs and support links.

2

Run /setup once

Creates every channel, wires it to its module and posts the menu. Owner or Administrator only.

3

Open the panel

After /setup, register the owner account from the link it gives you, then sign in to the web panel to configure everything.

Official bot vs selfbot

The official bot runs everything. A selfbot is optional and only needed for two features.

Official bot

The real Discord bot application you invite with an OAuth link. It runs almost everything: leveling, items, moderation, welcomer, booster, giveaways, AFK, feedback, staff rating, custom supporter roles, the /setup command, and every menu button.

How to add Invite it with the OAuth link (the "Add the bot" button). It joins as a normal bot user with the permissions the features need.
Token For the hosted bot this is handled for you. Self-hosters store the bot token in the database bots table, not in Discord, and point the process at it with BOT_ID.
Runs All standard features and slash/button interactions.

Selfbot (optional)

An optional user-token client for features that need a real user account. Only two features require it: the Discord Quest notifier and the message Forwarder. Everything else uses the official bot.

Requires a selfbot Discord Quest notifier and Message forwarder. Their config pages warn you if no selfbot is running for the server.
How to add Add a selfbot under the Selfbots page for the server and paste a user token. It is stored encrypted. Adding, starting, stopping, restarting and deleting are owner-only; staff see it read-only.
Risk A selfbot uses a user account token. Use it in line with Discord’s terms and your own risk assessment. It is entirely optional.

The /setup command

Run /setup in Discord (owner or Administrator only). It creates a menu category with these channels, wires each one to its module and posts the bot interface. If no owner account exists yet, it hands you a registration link to claim ownership.

「💻」menu Holds the main interface button members click to open the bot menu.
「⚙️」bot-updates Bot update notifications.
「🚪」welcome Where welcome messages post.
「🚀」booster Where server boost messages post.
「🔨」moderation Moderation (ban/kick) log embeds.
「🆙」level Level and rank progress notifications.
「🎁」giveaway Giveaway posts and winner announcements.
「⭐」staff-rating Staff rating reports and updates.
「📜」discord-quest Discord Quest notifications.
「📽️」content-creator Content creator posts and TikTok LIVE alerts.
「👗」roblox-catalog Roblox catalog item alerts.
「🛍️」items Link to the items shop.

Accounts & staff

Sign in with Discord. The person who claims the first invite is the owner; they bring in helpers from the Accounts page.

Owner Full control of the server in the panel. The first owner registers from the link /setup generates. Owners can invite more owners and staff.
Staff Staff-tier panel access, invited by an owner. What they can change is set by Permissions, separate from Discord chat or moderation rights.
Send Invite Pick an invite type (Owner or Staff), choose Discord members, and the bot DMs them a registration link that expires 24 hours after creation.
Accounts list Every registered account with its type. Lock/unlock freezes an account (frozen accounts cannot log in), and delete removes it permanently.
Invite Links All generated invites with their status (Pending, Used, Expired) and a countdown. Expire a pending invite to revoke it before use.

Who can do what

Account tiers control who manages the panel. They are separate from the Discord permission roles below, which control who can use features in Discord.

Owner

Full control of one server in the panel. The first owner claims the link from /setup.

  • Configure every module and permission for the server
  • Invite, freeze and delete staff accounts (not other owners)
  • Create and expire invite links
  • Add, start, stop, restart and delete selfbots
  • Invite more owners

Staff

Helper access invited by an owner. What they can change depends on the permission roles.

  • View and change settings allowed by their permission roles
  • Use staff features like the rating review queue
  • View selfbots read-only (cannot start or manage them)
  • Cannot invite, freeze or delete any account
  • Cannot run /setup

Superadmin

Global panel administrator (mainly relevant to self-hosters who run the whole instance).

  • Access every bot and server on the instance
  • Manage and freeze any account, including owners
  • Delete any account and expire any invite
  • Effectively unrestricted across the panel

Permissions

Map Discord roles to what they unlock. Each group lives with the module it belongs to.

Staff Roles Set on the Main page. Used for staff features and staff-related filtering.
Content Creator Roles Set on the Content Creator module. Used for creator permissions and member filtering.
Admin Not configured. Anyone with the Discord Administrator permission counts as a bot admin.
Supporter Not configured. Anyone boosting the server counts as a supporter.

Modules, field by field

Each module has a master toggle plus its own settings. Turn on only what you need.

Leveling & XP

Chat and voice activity earn XP that feeds levels, role rewards and leaderboards.

Leveling module Master toggle. When off, XP, voice time and the leveling Discord UI are disabled.
Base XP XP needed to reach level 2 (50 to 1000). Higher levels scale from this and the multiplier.
Multiplier Exponential multiplier for level requirements (1.0 to 2.0). Higher makes each level progressively harder.
XP Per Message XP awarded per eligible message (5 to 100). The message must pass the cooldown. Every human member earns XP; bots never do.
Message Cooldown (seconds) Minimum gap between messages that earn XP (0 to 180). Messages sent too fast award nothing.
Active Voice XP XP granted each interval while active in voice (5 to 100).
AFK Voice XP XP granted each interval while AFK in voice (5 to 100).
Voice Cooldown (seconds) How often voice XP is awarded (0 to 180). The voice XP above is granted each interval.
Video / camera XP Extra XP per voice tick while your camera is on, even if muted. 0 disables. Stacks with voice XP.
Live stream XP Extra XP per voice tick while using Go Live, even if muted. 0 disables. Stacks with voice and video XP.
Level Progress Notification Channel Channel for level-up and rank notifications.

Items & economy

A per-server shop of PvP and utility items bought with XP. Items are created in the global admin Items page; each server enables the system from the Public statistics config page (Items toggle + channel). Requires Public statistics to be on.

Items toggle (under Public statistics) When off, the Items tab and all buy/use actions are disabled for this server.
Item Events Channel Where steal, bomb, leech, gift and other item announcements post. Keep it separate from the level channel. If unset, item events are not announced.
Item: Name / Effect type / Description / Cost (XP) Per item in the admin catalog: its display name, what it does, the hover-card text and its XP price.
Item: effect settings Per effect type: Steal/Bomb use Min %, Max %, Cooldown, Victim immunity; Boost uses Multiplier, Duration, Scope (all/message/voice); Shield/Reflect/Disguise use Duration; Insurance uses Refund %, Duration, Cooldown; Gift uses Gift amount, Tax %; Leech uses Skim %, Duration; Bounty uses Bounty amount; Spy uses Spy success chance %.
Item: Availability Optional From/To dates (UTC) and recurring days plus From/To times (HH:MM) so an item only appears in a window.
Item: Show in shop / Allow use Hide an item from the shop, or block using copies members already own, without deleting it.

Welcomer

Greets new members with a custom message in one or more channels.

Welcomer module When off, welcome messages are not sent.
Welcome Channels One or more channels welcome messages post to.
Welcome Messages Your message templates. Placeholders: {user}, {server}, {memberCount}, {accountAge}.

Booster messages

Thanks members who boost the server.

Booster module When off, boost messages are not sent.
Boost Channels One or more channels boost messages post to.
Boost Messages Your templates. Placeholders: {user}, {server}, {boostLevel}, {totalBoosts}.

Giveaways

Run giveaways with entry rules and winner selection from Discord.

Giveaway module When off, giveaways and their Discord UI are disabled.
Giveaway Channel Where giveaways post and winners are announced.
Creator can participate Allow giveaway creators to enter their own giveaways.

AFK

Lets members flag themselves AFK; the bot adjusts their nickname and warns anyone who mentions them.

AFK module When off, the AFK button still shows but says the feature is turned off, and all AFK behavior stops.

Feedback

Routes member feedback into a channel, optionally pinging a role.

Feedback module When off, feedback submissions and their Discord UI are disabled.
Feedback Channel Where feedback submissions post.
Feedback Role (optional) Role to mention when feedback is submitted.

Staff rating

Members rate staff; approved ratings drive dynamic roles placed within a hierarchy range.

Staff rating module When off, staff rating flows and their Discord UI are disabled.
Role Start (Top) Highest boundary role. Rating roles are created/updated below it.
Role End (Bottom) Lowest boundary role. Rating roles are created/updated above it.
Rating Cooldown (Days) Days a member must wait before rating the same staff member again (1 to 30).
Review channel Where submissions go for staff review.
Rating Update Channel Where rating updates and announcements are sent.
Pending review role (optional) Role to mention on pending submissions.

Moderation

Logs ban and kick actions to a channel.

Moderation module When off, moderation is disabled, including ban and kick log embeds.
Moderation Logs Channel Where moderation logs post.

Channel notifications

Lets members opt in to notifications for channels you list, from the bot menu.

Channel notification module When off, per-channel notifications and the menu action are disabled.
Channels The channels members can opt in to follow.

Custom supporter roles

Lets supporters create a personalized role within a range you define.

Custom supporter role module When off, custom supporter role creation from the bot is disabled.
Role Start (Top) Highest position where custom roles are created. New roles sit below it.
Role End (Bottom) Lowest position where custom roles are created. New roles sit above it.

Content creator / TikTok

Handles creator applications and posts TikTok LIVE alerts.

Content creator module When off, creator admission and its Discord UI are disabled.
Admission Channel Staff approval queue for pending applications.
Target Broadcast Channel Where TikTok LIVE notifications from approved creators post.
Admission Cooldown (Days) How long a member waits before reapplying (1 to 30).
Pending Admission Role (optional) Role to mention when a new application arrives.

Discord Quest notifier

Posts Discord Quest alerts. Needs a running selfbot configured for the server.

Quest notifier module When off, quest polling and posts are disabled. Requires a running selfbot when enabled.
Notification channel Where the official bot posts quest embeds.
HTTP(S) proxy (optional) Used only for the quest list endpoint. Leave empty for a direct connection.
Auto quest enrollment When on, the bot menu shows Discord Quest with a Claim all button that enrolls every open quest with a user token.

Message forwarder

Forwards messages from a selfbot channel into a channel in this server. Add as many forwarders as you need.

Forwarder module When off, message forwarding from selfbots is disabled.
Selfbot The selfbot account that forwards messages.
Server (where selfbot is) The server the selfbot is connected to.
From Channels Messages from these source channels are forwarded.
Target Channel Where forwarded messages post in this server.
Role Pings (optional) Roles to mention on forwarded messages.
Mention filter Only forward messages that mention the selfbot.
Tag (optional) A label so you can recognize this forwarder later.

Roblox catalog watch

Posts alerts when new free, limited or official Roblox catalog items appear.

Roblox catalog module When off, Roblox catalog polling and posts are disabled.
Notification channel Where the bot posts Roblox catalog embeds.
Per-item alerts Members press Notify me under a post and pick what tags them: price, resale price, stock left or total supply. Only the changed field pings them.

Public statistics

The public pages — server statistics, leaderboard, members, and the per-member account (Overview, History, Themes, Guide) — are always on. Items, Minigames, Assets and Daily tasks are enabled here as sub-toggles.

Items / Minigames / Assets Sub-toggles under public statistics. Each unlocks its account tab (and channel, for Items/Minigames). Tabs stay visible when off and explain that the feature is disabled.
Daily tasks Sub-toggle that adds the Task tab: 9 daily and 9 weekly auto-generated goals, a 7-day check-in, and streaks. Nothing to configure — goals are sized per member from their own recent activity, and tasks for a feature you turned off never appear. Item rewards come from your shop (needs Items on) and streak milestones post to the item events channel.
Themes Always on, nothing to configure. Each member uploads a background image (PNG, JPG, GIF or WEBP) on their account Themes tab. Everything is re-encoded and resized to WebP — animated GIFs become animated WebP, keeping their frames and looping — and the stored result must land under 10MB. The accent colour is read from the image and can be overridden by hand. Animated effects — Glitch, Sparkle, Snow, Rain, Embers, Confetti, Bubbles, Scanlines, Grain, Holo, Aurora, Pulse, Earthquake, Thunder, Tsunami, Tornado, Meteor, Blizzard, Rainbow, Fire, Love, Glass, Bullet Hole, Volcano, Sandstorm, Void, Eclipse, Falling Star, Milky Way, Black Hole, Autumn, Sakura, Fireflies, Silk, Crystal, Neon, Matrix, Bouncer, Beach Sunset, Waterfall, Ripple, Cave, Frost, Fog, Smoke, Swarm, Jellyfish, Meadow, Circuit, Prism, Mycelium, Coral, Lichen, Anthill, Slime Mould, Culture, Graze, Decay, Bloom, Spore, Money, Candle, Vinyl, Fish tank, Popcorn, Rain glass, Dice, Cupcake, Gem or Crown — are won by spinning a reel for 1,000 XP on the Themes tab, and each spin also rolls a one-of-a-kind variant, so no two members look the same. An effect can be disabled and re-enabled without spinning again, so turning it off never costs the XP already paid. Spins post to the minigames channel and appear in the member’s History, but are excluded from the Minigames leaderboard because they are a fixed-price roll, not a wager. All of it repaints that member’s account pages, wallet card, their row on the leaderboard and their card in the members list, so every visitor sees it. Themes are per server, and a disguised member is already hidden from the public leaderboard.
Public URL The generated public address, derived from the server name.

AI chat

Members mention the bot to talk to it, or reply to one of its messages to keep going without mentioning again. Set this on the bot panel under the AI tab, not per server, so every server the bot is in shares one configuration. Each member keeps their own conversation in each server. Restart the bot after saving.

Enable AI chat required When off, mentions are ignored. The URL, key and model must all be set before it can be turned on.
API URL required Any OpenAI-compatible endpoint. A trailing slash or a full /chat/completions URL both work.
API key required Stored per bot and never sent back to the browser. Leave blank when saving to keep the current key.
Model name required The model id your endpoint expects, for example gemini-3.6-flash or gpt-4o.
Reasoning optional Off, Low, Medium, High or Extra high. Thinking options are matched to the model you named.
System prompt optional Sets the personality and rules for chat. Voice has its own prompt. Use {{today}} to insert the current date.
Enable voice AI optional Lets members ask the bot in chat to join their voice channel and talk out loud. Needs AI chat on, plus its own Google AI key and voice model. Requires Redis.
Voice model optional A Gemini Live model, for example gemini-3.8-live. Only needed when voice AI is on.
Thinking optional Low, Medium or High background reasoning, for extended thinking voice models such as gemini-3.8-live-extended-thinking. Other Live models think too, they just pick their own level.
Voice optional Which of the 30 Gemini voices the bot speaks with. Listen to them in Google AI Studio first. Leave on Default to use the model default.
Voice API URL, key and system prompt optional Voice has its own Google AI key and personality, separate from chat. Both are required to turn voice on. Always Gemini Live, so no endpoint to set.
Per-server override optional Each server sets its own chat prompt, voice prompt and voice on Configuration → AI. Whatever it leaves blank falls back to what you set here.

Voice: how it behaves

Everyone in the channel is heard by one shared session.

1

Ask it to join

A member says "join voice" to the bot in chat. It joins the channel that member is in.

2

Not in a channel

If the member is not in voice, the bot says so instead of joining.

3

One call at a time

If it is already in a call, it tells the next person it is busy and stays where it is.

4

Say "hey stupid"

A trained wake-word model listens for that exact phrase, so a busy channel never sets it off.

5

One speaker at a time

Whoever wakes it holds the conversation. Say you are done to release it for the next person.

6

Mutes when idle

It answers, then mutes itself. The mute icon shows whether it is listening.

7

Follows the inviter

Moved to another channel, it goes back to whoever invited it. Only they can send it away.

8

Leaving

Ask it to leave, or it leaves when the member who invited it leaves, or when the channel empties.

9

Quiet for 3 minutes

It says a short goodbye out loud, then disconnects. There is no fixed call length limit.

Web search, fetch and images

Three optional tools the AI reaches for on its own: searching the live web, reading a page it was linked to, and drawing a picture. Server data needs none of these. Each is a separate URL, model and key on the bot panel under the AI tab, so they can point at different providers. Any OpenAI-compatible gateway works. Restart the bot after saving.

Web search URL, model and key optional Fill all three and the bot can search the live web. Give the base URL, including any version segment — /search is appended for you.
Web fetch URL, model and key optional Fill all three and the bot can read a page it was linked to. Base URL again — /web/fetch is appended for you.
Image URL, model and key optional Fill all three and the bot can draw pictures. Base URL again — /images/generations is appended for you. Images come back at 512x512.

How it works

1

Off until filled

Each tool needs its URL, model and key. Until all three are set the bot is never offered that tool.

2

The AI decides

Nothing is forced. It searches, reads or draws only when the question calls for it.

3

Wikis come first

Game questions go to your wikis. Web search is for what the wikis do not cover.

4

Real links only

Web fetch only opens a URL a member sent or a search result returned, never an invented one.

5

Pictures post themselves

A generated image is uploaded straight to the channel. In voice it lands in the voice channel chat.

6

Keys stay server side

Every key is write-only. Save with the box blank to keep the key you already have.

Server knowledge

The AI can read this server's own live data, so "what is in the shop", "who is number one" and "what are my tasks" get real answers instead of guesses. It works as soon as AI chat is on — there is nothing extra to configure.

Server stats

Members, XP, messages, voice minutes and every module total.

Leaderboards

Any metric, any period — XP, chat, voice, steals, gambling.

Shop

Prices, what each item does, how long it lasts, what is coming.

XP rates

This server's own rates, so "how much XP for an hour in voice" is exact.

Giveaways & quests

What is running, the prize and how long is left.

How the game works

The same guide members read, so answers match the site.

Their account

Level, bag, assets, minigames, history, tasks and streak.

How it works

1

Nothing to set up

Comes with AI chat. No extra URL, model or key.

2

Follows your modules

A module you turn off disappears from the AI too.

3

Own account only

Members read their own bag, tasks and history, never anyone else.

4

Public stays public

Leaderboards, shop, giveaways and quests are open to everyone.

5

Disguise still hides

Disguised members stay off every list the AI can read.

6

Works in voice

The same answers, spoken short instead of listed.

Wiki knowledge

Without this, the AI answers game questions from memory and gets them wrong. Add a wiki and it looks the answer up instead. Set this on the bot panel under the Wikis tab. It applies to chat and voice alike, and to every server the bot is in.

API URL required The wiki api.php endpoint, usually /w/api.php or /api.php. Press Test to check it and fill in the name.
Name required What this wiki is called. Matched against questions, so name it after the game.
Description optional What the wiki covers. This is how a question is matched to the right wiki. Test fills it in.
Site URL optional The wiki home page, used when the bot links a page it read.
Relay URL optional Only needed when a wiki blocks your server. Points at a relay.php you host somewhere the wiki does accept. Leave blank to connect straight to the wiki.
Relay key optional The secret set inside relay.php. Required whenever a relay URL is filled in.
Enabled optional Turn a wiki off without deleting it. Disabled wikis are ignored by chat and voice.

How it works

1

Add a wiki

Open the bot, go to the Wikis tab and paste the api.php URL. Any MediaWiki site works, including Fandom.

2

Test it

Test confirms the endpoint answers and is really a wiki, then fills in the name for you.

3

Ask normally

Members just ask. Full questions work, not only exact page names.

4

Real numbers

Prices, weights and drop rates come from the wiki infobox, so stat answers are exact.

5

Reads the whole page

Skin lists, tables and changelogs come through in full. Nothing is trimmed.

6

Any wiki, any language

No per-game rules. Ask in any language and it still finds the English page, then answers back in yours.

7

Cached 10 minutes

Repeat questions answer instantly and the wiki is not hammered.

8

Applies right away

Chat picks up a new wiki on the next message. Voice picks it up on the next call. No restart needed.

When a wiki blocks your server

A few wiki hosts refuse traffic coming from servers, so the bot gets turned away even though the address is right. A relay fixes this: it forwards the lookup from somewhere the wiki does accept. Only the wikis you point at it are affected, everything else keeps connecting directly.

1

When you need it

Some wikis refuse requests from server IPs. Test says the wiki refused, not that your URL is wrong.

2

Put relay.php online

Copy scripts/relay.php to any hosting the wiki does accept, often cheap shared hosting, and open it over https.

3

Set a secret

Edit RELAY_KEY in the file to a long random string. The relay refuses to run while the key is still the default.

4

Fill both fields

Paste the relay address into Relay URL and the same secret into Relay key, then press Test.

5

Test goes through it

With a relay set, Test uses the relay too, so a green result means the whole path works.

6

One relay, many wikis

The same relay serves any wiki. Set the fields per wiki, and leave them blank for wikis that work directly.

Set up the items shop

Two parts: enable the module per server, then create items in the admin catalog. Items are shared across every server that turns Items on.

1

Enable Items

On the server Public statistics config page, turn on the Items toggle. This unlocks buy and use actions. Public statistics must be on.

2

Set the events channel

Pick an Item Events Channel where steal, bomb, leech, gift and other announcements post. Keep it separate from the level channel. If unset, item events are not announced.

3

Create items

Open the admin Items page and add items. Each needs a name, an effect type, a description and an XP cost. Items live in the catalog and appear in every server that has Items enabled.

4

Tune the effect

Each effect type has its own settings: percentages and cooldowns for steal/bomb, multiplier and scope for boost, spy success chance, and so on.

5

Set availability (optional)

Limit an item to a date range or to recurring days and times so it only shows in a window. Leave blank for always available.

6

Control visibility

Show in shop hides or reveals an item without deleting it. Allow use lets you freeze copies members already own. You can also gift copies straight to members.

7

Members play

Members open the shop from the Items button, spend XP, and use items from their bag (which holds up to 50). The Guide tab inside the shop explains every item to them.

8

Your prices drive tasks

With Daily tasks on, your shop sets the economy: the median item cost sizes XP rewards, and item rewards are drawn from items priced near the value of the task or check-in day that earned them. Hidden and disabled items are never handed out.

The Discord menu

Members click the Menu button in the menu channel. Every button is always shown — if a feature is off or needs a role, clicking it explains why.

📋 Menu The main button in the menu channel. Open to every member; every feature button is always listed.
💎 Custom Supporter Role Opens a modal to create or edit a personal role (name, color, icon).
🎉 Create Giveaway Starts the giveaway flow: pick an eligibility role, then fill the details form.
⏸️ Set AFK Status Opens the AFK modal, or shows your current AFK status with a Remove AFK button.
💬 Submit Feedback Opens the feedback modal with a message field and an anonymous option.
🛡️ Staff Rating Pick a staff member, choose a 1 to 5 score and category, and submit a rating.
🎬 Content Creator Shows the creator list and an Apply button (TikTok username plus reason).
🔔 Notifications Opens two choices: channel notifications (subscribe to the channels you enabled) and Roblox item notifications (the items a member follows, what each one alerts on, and a disable-all).
🌐 Select Language Switches the Discord interface language (English, Indonesian, German or Spanish).
🌐 Statistics Link to the public stats page.
👤 Account Link to the member account (Overview, Task, Items, Minigames, Assets, History, Themes, Guide).

Self-host setup

The project is open source under the GNU AGPL-3.0. Run your own instance with Node, MySQL and optional Redis.

1

Provision MySQL

Create a database. The app builds its schema and runs migrations automatically on first start. Redis is optional.

2

Fill the .env

Copy .env.example to .env and set APP_NAME, APP_URL, DB_*, MAIL_* and SECRET. Add REDIS_URL if you use Redis.

3

Install and build

Run npm install then npm run build. The Node adapter outputs a server bundle.

4

Run it

Start with node build for production, or npm run dev while developing. The schema is created on first boot.

5

Register the bot

Create a bot in the Discord Developer Portal, add its token and application id to the bots table, then set BOT_ID for the bot process and restart.

Environment variables

Copy .env.example to .env and fill these in.

APP_NAME required Brand name shown in the panel, emails and bot embeds. Read at build time.
APP_URL required Public base URL of your site, e.g. https://bot.example.com. Read at build time.
DB_HOST / DB_PORT / DB_USER / DB_PASSWORD / DB_NAME required MySQL connection. Or provide a single DATABASE_URL instead (mysql://user:pass@host:port/db).
MAIL_HOST / MAIL_USERNAME / MAIL_PASSWORD required SMTP for account notification emails. MAIL_PORT is optional (defaults to 587).
SECRET required A long random secret. Signs public account card links and keys the demo login captcha. Rotating it invalidates every issued account link.
REDIS_URL optional Redis for sessions and caching, e.g. redis://default:pass@localhost:6379/0.
S3_BUCKET / S3_ACCESS_KEY_ID / S3_SECRET_ACCESS_KEY optional Store uploads in an S3 or R2 bucket instead of local disk. All three must be set; add S3_ENDPOINT for R2, or S3_REGION for the bucket region on AWS.
BOT_ID per bot process The database id of the bot this process runs. The token lives in the database, not in env.
OTEL_EXPORTER_OTLP_ENDPOINT / OTEL_SERVICE_NAME optional OpenTelemetry log export. Telemetry only turns on when the endpoint is set.