Stress and strain are important factors in determining the mechanical, electronic, and optical properties of materials, relating to each other by the materials elasticity or stiffness. Both are represented by second rank field tensors with, in general, six independent components. Measurements of these quantities are usually achieved by measuring a property that depends on the translational symmetry and periodicity of the crystal lattice, such as optical phonon energies using Raman spectroscopy, the electronic band gap using cathodoluminescence, photoelasticity via the optical birefringence, or Electron Back Scattering Diffraction (EBSD). A reciprocal relationship therefore exists between the maximum sensitivity of the measurements and the spatial resolution. Furthermore, of these techniques, only EBSD and off-axis Raman spectroscopy allow measurement of all six components of the stress tensor, but neither is able to provide full 3D maps. Here we demonstrate a method for measuring the full stress tensor in diamond, using the spectral and optical polarization properties of the photoluminescence from individual nitrogen vacancy (NV) colour centres. We demonstrate a sensitivity of order 10 MPa, limited by local fluctuations in the stress in the sample, and corresponding to a strain of about 10^-5, comparable with the best sensitivity provided by other techniques. By using the colour centres as built-in local sensors, the technique overcomes the reciprocal relationship between spatial resolution and sensitivity and offers the potential for measuring strains as small as 10^-9 at spatial resolution of order 10 nm. Furthermore it provides a straightforward route to volumetric stress mapping. Aside from its value in understanding strain distributions in diamond, this new approach to stress and strain measurement could be adapted for use in micro or nanoscale sensors.