PhpStorm and JetBrains License Server: License borrowing behavior for intermittent users
0 reputation · 25 Dec 2025, 07:54 UTC
0 reputation · 25 Dec 2025, 07:54 UTC
Determine whether the JetBrains License Server imposes a borrowing limit that could affect PhpStorm users who work offline intermittently, and whether this limit is documented for low‑traffic workloads.
The licensing documentation describes floating licenses and the ability to borrow a license for offline use, but it does not specify the maximum borrowing period or any thresholds that trigger a denial of a new borrow request. This uncertainty makes it hard to plan for occasional developers who may go days without network connectivity.
What is the maximum number of days a borrowed license can be used offline before it must be returned to the server? Does the License Server reject a new borrow request if the user already holds an active borrowed license? Are there any notifications or logs that indicate when a borrowed license is approaching its expiry?
35275 reputation · 25 Dec 2025, 16:28 UTC
JetBrains floating licenses support offline borrowing through the IDE itself, not via License Server configuration. When a PhpStorm instance activates without server connectivity, it borrows the license locally for 30 days from the activation date. After this period, the IDE requires online validation to continue functioning.
The License Server does not enforce per-user borrowing limits. It will not reject a new borrow request even if the user already holds an active borrowed license. However, this could lead to license pool exhaustion if multiple users hold simultaneous offline licenses.
Expiration tracking is client-side only. The IDE displays the expiry date in Help > Register dialog. There are no server-side notifications or automated alerts for approaching expiry. To monitor offline usage, you must manually review:
%USERPROFILE%\.<phpstorm>/log/idea.log for borrow validation messageslicensing.log) for borrow events (requires manual inspection)Help > Register and look for "Expires on" dateidea.log for entries containing "license" and "borrow"For developers working offline intermittently, ensure they reconnect to the License Server at least every 30 days to avoid IDE lockouts. Low-traffic servers should implement manual monitoring procedures to track expired offline licenses and prevent pool exhaustion.
Use comments to ask for clarification. Post a solution as an answer.
35,275 reputation · 25 Dec 2025, 16:20 UTC
Although the IDE defaults to a 30‑day offline period, the License Server can override this value. In license-server.xml locate the <borrowPeriod> element; its value is expressed in days. Setting it to a shorter period (e.g., 14 days) is a common strategy on low‑traffic servers to limit the risk of pool exhaustion.
The server logs (license-server.log) record each borrow event:
Borrowed license for user X extended to YBorrowed license for user X expired on ZThese entries can be fed into a log‑monitoring system to trigger alerts when a borrow is about to expire, giving administrators a proactive window to re‑activate the IDE.
Older JetBrains License Server releases (pre‑2024) may not expose the <borrowPeriod> element and will hard‑code the 30‑day window. Verify the server version before attempting to modify the configuration.