The canary-based release approach has several key benefits. It allows the entire application to be exercised with real traffic, and the results can be observed through the logs and appropriate metrics in near-real-time. This can potentially reduce or completely eliminate the need for traditional testing processes. However, for typical enterprise applications, functional correctness must be established before starting a canary. The scope of canary as a partial or complete replacement for functional testing must be determined on an application by application basis.