1. Steps to check archive logs are being shipped and applied to standby.
AT PRIMARY:
A. Check the status.
Note: Status should return valid for standby destination
set lines 500
column destination format a35 wrap
column process format a7
column archiver format a8
column ID format 99
select dest_id "ID",destination,status,target,archiver,schedule,process,mountid from v$archive_dest ;
Sample Output:

B. Check if any error is reported for archive dest.
Note: Should not return any error messages
column error format a55 tru
select dest_id,status,error from v$archive_dest;
Sample Output:

C. Check the errors from dataguard status.
Note: Should not return any row.
column message format a80
select message, timestamp from v$dataguard_status where severity in ('Error','Fatal') order by timestamp;
AT STANBDY:
A. Check MRP status and which block is being applied at standby database.
set linesize 230
select process,status,client_process,sequence#,block#,active_agents,known_agents from v$managed_standby ;
Sample Output:

B. Check the error for dataguard status
Note: Should not return any rows.
column message format a80
select message, timestamp from v$dataguard_status where severity in ('Error','Fatal') order by timestamp;