The market prediction for network deployments has positioned Software-Defined Networks (SDN) as the first of the options for changing local, transport, or cloud networks. Since the OpenFlow protocol gained traction and evolved in the last versions, the possibilities for expanding network capabilities to deploy custom services have risen considerably. With next-generation SDN (NG-SDN), flexibility has grown as data plane programming languages, such as P4, and Data-Control Plane Interface (DCPI) protocols like P4Runtime have appeared. Furthermore, the ability to program the data plane has opened the possibilities to develop new network telemetry approaches, such as In-band Network Telemetry (INT). A transition to partially incorporated SDN, also known as hybrid SDN, often involves considerable complexity, especially when legacy devices implement non-open standards and protocols. Therefore, incorporating programmable SDN devices and deploying network telemetry protocols on top of existing legacy devices is still challenging. This research focuses on deploying and integrating the INT protocol using programmable P4 switches over a hybrid SDN network. We describe and implement the required control plane applications and data plane configuration, and discuss the constraints that need to be managed so that P4 programmable switches can interact with the rest of the MPLS legacy devices. In this sense, we discuss P4 switch placement alternatives to maximize their performance and usability in a hybrid SDN network. Then, we validate the INT-based monitoring system by ensuring traffic forwarding using several INT header placements. In these tests, we demonstrate the feasibility of merging P4 switches running INT traffic and legacy devices, presenting the requirements to accomplish hybrid next-generation SDN (HNG-SDN) architectures. Besides, we provide new monitoring features, such as MPLS label verification, and we also use telemetry data to feed back traffic forwarding applications for traffic engineering purposes. We finally show the time that packets spend in the pipeline comparing different parsing and actions performed in different cases.