- A feature usually is a larger piece of business logic and is typically controlled by the keyuser in the system/company. By the Feature we can enable an entire logical process or add a new helpful tools (like grid filter, column mover etc).
For example “Include waiting records in history cleanup tasks”
This feature lets you include waiting records when running the "Purchase update history cleanup" … (omiss) periodic tasks. It adds a new option called "All" to the "Clean up" drop-down list for the dialogs that launch each of these tasks. Select "All" to include the waiting records.
In other hand a feature is look like a new package (add or fix) in our system.
Microsoft Doc:
Feature management overview - Finance & Operations | Dynamics 365 | Microsoft Learn
We have different meaning for flight and Kill Switch.
We can both assume them as a switch.
FLIGHT:
By flights, we can specifically enable (by atomic way) small pieces of code.
So, using flight we can handle on specific points in the code which will enable changes in the system functionality.
They are separate from the customer control provided by Feature Management.
KILL SWITCH
By Kill switch is possible to turn application flight ON and OFF, is not necessary to deploy/rebuild the any code.
The code remains the same but change the logic behavior immediately.
The only way to disable a flight is with a kill switch.
- How to enable a Kill Swith (by SQL script):
INSERT INTO SYSFLIGHTING (FLIGHTNAME, ENABLED) VALUES ('MyKillSwitchName_KillSwitch', 1) - How to check if Flight is enable:
select ENABLED, * from SysFlighting where FLIGHTNAME = 'MyFlightName' - How to enable a Flight
insert into dbo.SYSFLIGHTING(FLIGHTNAME, ENABLED, FLIGHTSERVICEID) values ('MyFlightName', 1, 12719367) - Example Flight switch code
My consider: always try first in test environment and ask to Support. Change these elements can be produce irreversible change of data.
So, I wish all good luck.
enjoy