Not
Åtkomst till denna sida kräver auktorisation. Du kan prova att logga in eller byta katalog.
Åtkomst till denna sida kräver auktorisation. Du kan prova att byta katalog.
Som standard loggas inte fel och varningar som genereras av Microsoft-drivrutiner för PHP för SQL Server i PHP-systemloggen. I det här avsnittet beskrivs hur du konfigurerar aktivitet för drivrutinsloggning. Mer information om hur du konfigurerar PHP-felhanteringsinställningar som inte är specifika för drivrutinerna finns i PHP-dokumentationen.
Loggar aktivitet med hjälp av drivrutinen för PDO_SQLSRV
Den enda tillgängliga loggningskonfigurationen som är specifik för den PDO_SQLSRV drivrutinen är posten pdo_sqlsrv.log_severity i filen php.ini.
Lägg till följande i slutet av din php.ini-fil:
[pdo_sqlsrv]
pdo_sqlsrv.log_severity = <number>
log_severity kan vara något av följande värden:
| Värde | Description |
|---|---|
| 0 | Loggning är inaktiverat (är standard om ingenting har definierats). |
| -1 | Anger att fel, varningar och meddelanden loggas. |
| 1 | Specificerar att fel loggas. |
| 2 | Anger att varningar loggas. |
| 4 | Anger att meddelanden loggas. |
Loggningsinformation läggs till i filen phperrors.log.
PHP läser konfigurationsfilen vid initiering och lagrar data i en cache. Det tillhandahåller också ett API för att uppdatera dessa inställningar och använda direkt och skrivs till konfigurationsfilen. Med det här API:et kan programskript ändra inställningarna även efter PHP-initieringen.
Loggningsaktivitet med SQLSRV-drivrutinen
Om du vill aktivera loggning kan du använda funktionen sqlsrv_configure eller ändra php.ini-filen. Du kan logga aktivitet på initieringar, anslutningar, instruktioner eller felfunktioner. Du kan också ange om du vill logga fel, varningar, meddelanden eller alla tre.
Anmärkning
Du kan konfigurera platsen för loggfilen i php.ini-filen. Mer information finns i PHP-dokumentationen .
Aktivera loggning
Du kan aktivera loggning med hjälp av funktionen sqlsrv_configure för att ange ett värde för logSubsystems-inställningen . Följande kodrad konfigurerar till exempel drivrutinen för att logga aktivitet på anslutningar:
sqlsrv_configure("LogSubsystems", SQLSRV_LOG_SYSTEM_CONN);
I följande tabell beskrivs de konstanter som kan användas som värde för LogSubsystems-inställningen :
| Värde (heltalsekvivalent inom parenteser) | Description |
|---|---|
| SQLSRV_LOG_SYSTEM_ALL (-1) | Aktiverar loggning av alla undersystem. |
| SQLSRV_LOG_SYSTEM_OFF (0) | Inaktiverar loggning. Det här är standardinställningen. |
| SQLSRV_LOG_SYSTEM_INIT (1) | Aktiverar loggning av initieringsaktivitet. |
| SQLSRV_LOG_SYSTEM_CONN (2) | Aktiverar loggning av anslutningsaktivitet. |
| SQLSRV_LOG_SYSTEM_STMT (4) | Aktiverar loggning av instruktionsaktivitet. |
| SQLSRV_LOG_SYSTEM_UTIL (8) | Aktiverar loggning av felfunktionsaktivitet (till exempel handle_error och handle_warning). |
Du kan ange mer än ett värde i taget för logSubsystems-inställningen med hjälp av den logiska OR-operatorn (|). Följande kodrad aktiverar till exempel loggning av aktivitet på både anslutningar och instruktioner:
sqlsrv_configure("LogSubsystems", SQLSRV_LOG_SYSTEM_CONN | SQLSRV_LOG_SYSTEM_STMT);
Du kan också aktivera loggning genom att ange ett heltalsvärde för logSubsystems-inställningen i php.ini-filen. Om du till exempel lägger till följande rad i [sqlsrv] avsnittet i php.ini-filen aktiveras loggning av anslutningsaktivitet:
sqlsrv.LogSubsystems = 2
Genom att lägga till heltalsvärden tillsammans kan du ange fler än ett alternativ i taget. Om du till exempel lägger till följande rad i [sqlsrv] avsnittet i php.ini-filen aktiveras loggning av anslutnings- och instruktionsaktivitet:
sqlsrv.LogSubsystems = 6
Loggningsfel, varningar och meddelanden
När du har aktiverat loggning måste du ange vad som ska loggas. Du kan logga ett eller flera av följande: fel, varningar och meddelanden. Följande kodrad anger till exempel att endast varningar loggas:
sqlsrv_configure("LogSeverity", SQLSRV_LOG_SEVERITY_WARNING);
Anmärkning
Standardinställningen för LogSeverity är SQLSRV_LOG_SEVERITY_ERROR. Om loggning är aktiverat och ingen inställning för LogSeverity har angetts loggas endast fel.
I följande tabell beskrivs de konstanter som kan användas som värde för logSeverity-inställningen :
| Värde (heltalsekvivalent inom parenteser) | Description |
|---|---|
| SQLSRV_LOG_SEVERITY_ALL (-1) | Anger att fel, varningar och meddelanden loggas. |
| SQLSRV_LOG_SEVERITY_ERROR (1) | Specificerar att fel loggas. Det här är standardinställningen. |
| SQLSRV_LOG_SEVERITY_WARNING (2) | Anger att varningar loggas. |
| SQLSRV_LOG_SEVERITY_NOTICE (4) | Anger att meddelanden loggas. |
Du kan ange mer än ett värde i taget för LogSeverity-inställningen med hjälp av den logiska OR-operatorn (|). Följande kodrad anger till exempel att fel och varningar ska loggas:
sqlsrv_configure("LogSeverity", SQLSRV_LOG_SEVERITY_ERROR | SQLSRV_LOG_SEVERITY_WARNING);
Anmärkning
Om du anger ett värde för LogSeverity-inställningen aktiveras inte loggning. Du måste aktivera loggning genom att ange ett värde för logSubsystems-inställningen och sedan ange allvarlighetsgraden för det som loggas genom att ange ett värde för LogSeverity.
Du kan också ange en inställning för LogSeverity-inställningen med hjälp av heltalsvärden i php.ini-filen. Om du till exempel lägger till följande rad i [sqlsrv] avsnittet i php.ini-filen kan du endast logga varningar:
sqlsrv.LogSeverity = 2
Genom att lägga till heltalsvärden tillsammans kan du ange fler än ett alternativ i taget. Om du till exempel lägger till följande rad i [sqlsrv] avsnittet i php.ini-filen kan du logga fel och varningar:
sqlsrv.LogSeverity = 3
Se även
Programmeringsguide för Microsoft-drivrutiner för PHP för SQL Server