Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 2d3ff25f authored by Frank Li's avatar Frank Li Committed by Automerger Merge Worker
Browse files

Merge "Add one metrics field to record the cause of DNS query internal error"...

Merge "Add one metrics field to record the cause of DNS query internal error" into rvc-dev am: 8128fed2 am: cafe0c44

Change-Id: Id8763f0667b0caac3725ede7f939ba15fab04787
parents 3cbecf7a cafe0c44
Loading
Loading
Loading
Loading
+141 −0
Original line number Original line Diff line number Diff line
@@ -43,6 +43,7 @@ enum ReturnCode {
    RC_EAI_BADHINTS = 12;
    RC_EAI_BADHINTS = 12;
    RC_EAI_PROTOCOL = 13;
    RC_EAI_PROTOCOL = 13;
    RC_EAI_OVERFLOW = 14;
    RC_EAI_OVERFLOW = 14;
    RC_RESOLV_INTERNAL_ERROR = 254;
    RC_RESOLV_TIMEOUT = 255;
    RC_RESOLV_TIMEOUT = 255;
    RC_EAI_MAX = 256;
    RC_EAI_MAX = 256;
}
}
@@ -189,6 +190,144 @@ enum CacheStatus{
    CS_SKIP = 3;
    CS_SKIP = 3;
}
}


// The enum LinuxErrno is defined in the following 2 files.
// 1. bionic/libc/kernel/uapi/asm-generic/errno-base.h
// 2. bionic/libc/kernel/uapi/asm-generic/errno.h
enum LinuxErrno {
    SYS_UNKNOWN = 0;
    SYS_EPERM = 1;              // Not super-user
    SYS_ENOENT = 2;             // No such file or directory
    SYS_ESRCH = 3;              // No such process
    SYS_EINTR = 4;              // Interrupted system call
    SYS_EIO = 5;                // I/O error
    SYS_ENXIO = 6;              // No such device or address
    SYS_E2BIG = 7;              // Arg list too long
    SYS_ENOEXEC = 8;            // Exec format error
    SYS_EBADF = 9;              // Bad file number
    SYS_ECHILD = 10;            // No children
    SYS_EAGAIN = 11;            // No more processes
    SYS_ENOMEM = 12;            // Not enough core
    SYS_EACCES = 13;            // Permission denied
    SYS_EFAULT = 14;            // Bad address
    SYS_ENOTBLK = 15;           // Block device required
    SYS_EBUSY = 16;             // Mount device busy
    SYS_EEXIST = 17;            // File exists
    SYS_EXDEV = 18;             // Cross-device link
    SYS_ENODEV = 19;            // No such device
    SYS_ENOTDIR = 20;           // Not a directory
    SYS_EISDIR = 21;            // Is a directory
    SYS_EINVAL = 22;            // Invalid argument
    SYS_ENFILE = 23;            // Too many open files in system
    SYS_EMFILE = 24;            // Too many open files
    SYS_ENOTTY = 25;            // Not a typewriter
    SYS_ETXTBSY = 26;           // Text file busy
    SYS_EFBIG = 27;             // File too large
    SYS_ENOSPC = 28;            // No space left on device
    SYS_ESPIPE = 29;            // Illegal seek
    SYS_EROFS = 30;             // Read only file system
    SYS_EMLINK = 31;            // Too many links
    SYS_EPIPE = 32;             // Broken pipe
    SYS_EDOM = 33;              // Math arg out of domain of func
    SYS_ERANGE = 34;            // Math result not representable
    SYS_EDEADLOCK = 35;         // File locking deadlock error
    SYS_ENAMETOOLONG = 36;      // File or path name too long
    SYS_ENOLCK = 37;            // No record locks available
    SYS_ENOSYS = 38;            // Function not implemented
    SYS_ENOTEMPTY = 39;         // Directory not empty
    SYS_ELOOP = 40;             // Too many symbolic links
    SYS_ENOMSG = 42;            // No message of desired type
    SYS_EIDRM = 43;             // Identifier removed
    SYS_ECHRNG = 44;            // Channel number out of range
    SYS_EL2NSYNC = 45;          // Level 2 not synchronized
    SYS_EL3HLT = 46;            // Level 3 halted
    SYS_EL3RST = 47;            // Level 3 reset
    SYS_ELNRNG = 48;            // Link number out of range
    SYS_EUNATCH = 49;           // rotocol driver not attached
    SYS_ENOCSI = 50;            // No CSI structure available
    SYS_EL2HLT = 51;            // Level 2 halted
    SYS_EBADE = 52;             // Invalid exchange
    SYS_EBADR = 53;             // Invalid request descriptor
    SYS_EXFULL = 54;            // Exchange full
    SYS_ENOANO = 55;            // No anode
    SYS_EBADRQC = 56;           // Invalid request code
    SYS_EBADSLT = 57;           // Invalid slot
    SYS_EBFONT = 59;            // Bad font file fmt
    SYS_ENOSTR = 60;            // Device not a stream
    SYS_ENODATA = 61;           // No data (for no delay io)
    SYS_ETIME = 62;             // Timer expired
    SYS_ENOSR = 63;             // Out of streams resources
    SYS_ENONET = 64;            // Machine is not on the network
    SYS_ENOPKG = 65;            // Package not installed
    SYS_EREMOTE = 66;           // The object is remote
    SYS_ENOLINK = 67;           // The link has been severed
    SYS_EADV = 68;              // Advertise error
    SYS_ESRMNT = 69;            // Srmount error
    SYS_ECOMM = 70;             // Communication error on send
    SYS_EPROTO = 71;            // Protocol error
    SYS_EMULTIHOP = 72;         // Multihop attempted
    SYS_EDOTDOT = 73;           // Cross mount point (not really error)
    SYS_EBADMSG = 74;           // Trying to read unreadable message
    SYS_EOVERFLOW = 75;         // Value too large for defined data type
    SYS_ENOTUNIQ = 76;          // Given log. name not unique
    SYS_EBADFD = 77;            // f.d. invalid for this operation
    SYS_EREMCHG = 78;           // Remote address changed
    SYS_ELIBACC = 79;           // Can't access a needed shared lib
    SYS_ELIBBAD = 80;           // Accessing a corrupted shared lib
    SYS_ELIBSCN = 81;           // .lib section in a.out corrupted
    SYS_ELIBMAX = 82;           // Attempting to link in too many libs
    SYS_ELIBEXEC = 83;          // Attempting to exec a shared library
    SYS_EILSEQ = 84;
    SYS_ERESTART = 85;
    SYS_ESTRPIPE = 86;
    SYS_EUSERS = 87;
    SYS_ENOTSOCK = 88;          // Socket operation on non-socket
    SYS_EDESTADDRREQ = 89;      // Destination address required
    SYS_EMSGSIZE = 90;          // Message too long
    SYS_EPROTOTYPE = 91;        // Protocol wrong type for socket
    SYS_ENOPROTOOPT = 92;       // Protocol not available
    SYS_EPROTONOSUPPORT = 93;   // Unknown protocol
    SYS_ESOCKTNOSUPPORT = 94;   // Socket type not supported
    SYS_EOPNOTSUPP = 95;        // Operation not supported on transport endpoint
    SYS_EPFNOSUPPORT = 96;      // Protocol family not supported
    SYS_EAFNOSUPPORT = 97;      // Address family not supported by protocol family
    SYS_EADDRINUSE = 98;        // Address already in use
    SYS_EADDRNOTAVAIL = 99;     // Address not available
    SYS_ENETDOWN = 100;         // Network interface is not configured
    SYS_ENETUNREACH = 101;      // Network is unreachable
    SYS_ENETRESET = 102;
    SYS_ECONNABORTED = 103;     // Connection aborted
    SYS_ECONNRESET = 104;       // Connection reset by peer
    SYS_ENOBUFS = 105;          // No buffer space available
    SYS_EISCONN = 106;          // Socket is already connected
    SYS_ENOTCONN = 107;         // Socket is not connected
    SYS_ESHUTDOWN = 108;        // Can't send after socket shutdown
    SYS_ETOOMANYREFS = 109;
    SYS_ETIMEDOUT = 110;        // Connection timed out
    SYS_ECONNREFUSED = 111;     // Connection refused
    SYS_EHOSTDOWN = 112;        // Host is down
    SYS_EHOSTUNREACH = 113;     // Host is unreachable
    SYS_EALREADY = 114;         // Socket already connected
    SYS_EINPROGRESS = 115;      // Connection already in progress
    SYS_ESTALE = 116;
    SYS_EUCLEAN = 117;
    SYS_ENOTNAM = 118;
    SYS_ENAVAIL = 119;
    SYS_EISNAM = 120;
    SYS_EREMOTEIO = 121;
    SYS_EDQUOT = 122;
    SYS_ENOMEDIUM = 123;        // No medium (in tape drive)
    SYS_EMEDIUMTYPE = 124;
    SYS_ECANCELED = 125;
    SYS_ENOKEY = 126;
    SYS_EKEYEXPIRED = 127;
    SYS_EKEYREVOKED = 128;
    SYS_EKEYREJECTED = 129;
    SYS_EOWNERDEAD = 130;
    SYS_ENOTRECOVERABLE = 131;
    SYS_ERFKILL = 132;
    SYS_EHWPOISON = 133;
}

message DnsQueryEvent {
message DnsQueryEvent {
    optional android.stats.dnsresolver.NsRcode rcode = 1;
    optional android.stats.dnsresolver.NsRcode rcode = 1;


@@ -210,6 +349,8 @@ message DnsQueryEvent {
    optional bool connected = 8;
    optional bool connected = 8;


    optional int32 latency_micros = 9;
    optional int32 latency_micros = 9;

    optional android.stats.dnsresolver.LinuxErrno linux_errno = 10;
}
}


message DnsQueryEvents {
message DnsQueryEvents {